I am trying to compile mesa (as part of the compilation process for xcrysden) and I have an error in the make process that I don't understand how to fix. I am quite unfamiliar with using make so any support is appreciated. I checked other threads on stack overflow and I didn't see answers to this specific problem.
make[6]: Entering directory '/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/mesa/drivers/dri' CXXLD mesa_dri_drivers.la /usr/bin/ld: i965/.libs/libi965_dri.a(libintel_common_la-gen_disasm.o):/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/intel/common/gen_disasm.c:31: multiple definition of `INTEL_DEBUG'; i965/.libs/libi965_dri.a(libintel_common_la-gen_debug.o):/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/intel/common/gen_debug.c:39: first defined here /usr/bin/ld: radeon/.libs/libradeon_dri.a(radeon_debug.o):/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/mesa/drivers/dri/radeon/radeon_debug.c:60: multiple definition of `radeon_enabled_debug_types'; r200/.libs/libr200_dri.a(radeon_debug.o):/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/mesa/drivers/dri/r200/radeon_debug.c:60: first defined here collect2: error: ld returned 1 exit status make[6]: *** [Makefile:719: mesa_dri_drivers.la] Error 1 make[6]: Leaving directory '/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/mesa/drivers/dri' make[5]: *** [Makefile:814: all-recursive] Error 1 make[5]: Leaving directory '/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/mesa/drivers/dri' make[4]: *** [Makefile:3385: all-recursive] Error 1 make[4]: Leaving directory '/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/mesa' make[3]: *** [Makefile:2200: all] Error 2 make[3]: Leaving directory '/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src/mesa' make[2]: *** [Makefile:895: all-recursive] Error 1 make[2]: Leaving directory '/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src' make[1]: *** [Makefile:680: all] Error 2 make[1]: Leaving directory '/home/elliot/software/xcrysden-1.6.2/external/src/mesa-18.3.6/src' make: *** [Makefile:692: all-recursive] Error 1 The errors:
make[6]: *** [Makefile:719: mesa_dri_drivers.la] Error 1 make[4]: *** [Makefile:3385: all-recursive] Error 1 make[1]: *** [Makefile:680: all] Error 2 Clearly the error is something to do with the drivers, but I do not understand what the error messages are trying to tell me.
INTEL_DEBUGis being defined twice; once ingen_disasm.cline 31 and the second time ingen_debug.cline 39. You can only define each global symbol one time in the program, else the system doesn't know which one you mean when you refer to them. Similar for the other error.makeis not the problem. It's just the tool that discovered the problem. Supposing that you have not made any modifications to the software, the issue very likely is either that the Mesa distribution you are trying to build is buggy, or that you./configured it in an unsupported way, or both. We do not have sufficient information to be more specific, and in any case, the Mesa team would be better equipped to help you with details of building their software.