Needs to link against -lGLX for newer Mesa versions
Versatile Commodore Emulator
Brought to you by:
blackystardust,
gpz
On openSUSE Tumbleweed, which uses the latest upstream version of Mesa, the build fails with:
[ 255s] /usr/lib64/gcc/x86_64-suse-linux/15/../../../../x86_64-suse-linux/bin/ld: ../src/arch/gtk3/libarch.a(opengl_renderer_unix.o): undefined reference to symbol 'glXQueryVersion'
[ 255s] /usr/lib64/gcc/x86_64-suse-linux/15/../../../../x86_64-suse-linux/bin/ld: /usr/lib64/libGLX.so.0: error adding symbols: DSO missing from command line
[ 255s] collect2: error: ld returned 1 exit status
[ 255s] make[3]: *** [Makefile:1835: x64] Error 1
This is because the function glXQueryVersion is part of libGLX and the build system needs to include "-lGLX".
In openSUSE, we're currently using the following workaround in the spec file:
export LIBS="-lGLX"
I'm not 100% sure what the proper way of fixing this. Most likely configure.ac needs to be modified to include "LIBS = $LIBS $GLX_LIBS".
Which version of Mesa introduced that change?
And, not sure how to fix this either.... as long as the GHA builds work - i'd rather not touch the configure stuff right now shrug