Building VirtualGL 3.1.5 on Alpine Linux fails when linking fakerut/eglxfakerut:
ninja: job failed with status 1: : && /usr/bin/c++ -Os -fstack-clash-protection -Wformat -Werror=format-security -D_GLIBCXX_ASSERTIONS=1 -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS=1 -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST -fno-plt -O3 -DNDEBUG -Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs -L/home/builder/package/testing/virtualgl/src/VirtualGL-3.1.5/build/staticlib -static-libgcc server/CMakeFiles/eglxfakerut.dir/eglxfakerut.cpp.o -o bin/eglxfakerut -Wl,-z,now /usr/lib/libGL.so -Wl,-z,now /usr/lib/libX11.so -Wl,-z,now /usr/lib/libEGL.so -ldl lib/libvglutil.a -lpthread && :
/usr/lib/gcc/x86_64-alpine-linux-musl/15.2.0/../../../../x86_64-alpine-linux-musl/bin/ld: server/CMakeFiles/eglxfakerut.dir/eglxfakerut.cpp.o: in function `procAddrTest()':
eglxfakerut.cpp:(.text+0x7a2e): undefined reference to `glBlitNamedFramebuffer'
/usr/lib/gcc/x86_64-alpine-linux-musl/15.2.0/../../../../x86_64-alpine-linux-musl/bin/ld: eglxfakerut.cpp:(.text+0x7a75): undefined reference to `glCheckNamedFramebufferStatus'
/usr/lib/gcc/x86_64-alpine-linux-musl/15.2.0/../../../../x86_64-alpine-linux-musl/bin/ld: eglxfakerut.cpp:(.text+0x7abc): undefined reference to `glCheckNamedFramebufferStatusEXT'
/usr/lib/gcc/x86_64-alpine-linux-musl/15.2.0/../../../../x86_64-alpine-linux-musl/bin/ld: eglxfakerut.cpp:(.text+0x7b03): undefined reference to `glClearNamedFramebufferfi'
.....
I think this is related to the fix implemented for #136. In Alpine, mesa is built as classic without libglvnd, so the OpenGL 4.5 functions referenced in the tests are not available at link time. I think this can be fixed through glXGetProcAddress() but I'm just a package maintainer and know very little about OpenGL, so I thought it better to open an issue than try to fix it myself (or with AI) 😅 .
Building VirtualGL 3.1.5 on Alpine Linux fails when linking fakerut/eglxfakerut:
I think this is related to the fix implemented for #136. In Alpine, mesa is built as classic without libglvnd, so the OpenGL 4.5 functions referenced in the tests are not available at link time. I think this can be fixed through
glXGetProcAddress()but I'm just a package maintainer and know very little about OpenGL, so I thought it better to open an issue than try to fix it myself (or with AI) 😅 .