|
From: <bo...@gm...> - 2025-08-17 19:25:37
|
When trying to build stable with the download_and_compile.sh script, the
build fails with the error attached at the end. I figured out that this
happens since OSG commit 89ff2847, where the CMake version was bumped to
3.12. Upon changing the required version to 3.10, it builds fine again.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9b9219edc..7f4d35284 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -14,7 +14,7 @@ set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE)
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
-CMAKE_MINIMUM_REQUIRED(VERSION 3.12 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 3.10 FATAL_ERROR)
if(COMMAND cmake_policy)
# Works around warnings libraries linked against that don't
I cannot assess if version 3.12 is required for OSG or the FlightGear
project in its entirety, but these were the versions I tested:
2.8.0 works (from before the above mentioned commit)
3.10 works
3.11 doesn't work
3.12 doesn't work
System Info:
Debian GNU/Linux 13.0
cmake version 3.31.6
CARES 4c8820a6 origin/v1.34 https://github.com/c-ares/c-ares.git
DATA e737992f4 origin/release/2024.1 https://gitlab.com/flightgear/fgdata.git
FGFS 4a98505ac origin/release/2024.1 https://gitlab.com/flightgear/flightgear.git
OSG a4ea8ec53 origin/release/2024-build https://gitlab.com/flightgear/openscenegraph.git
PLIB 2052276 origin/master https://git.code.sf.net/p/libplib/code
SIMGEAR 72aa5836 origin/release/2024.1 https://gitlab.com/flightgear/simgear.git
Error Log:
Linking CXX executable ../../bin/osgviewer
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDrawArrays'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glCallList'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glPointSize'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexParameteriv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glFrontFace'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLightModeli'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGetBooleanv'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glColorMask'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glAlphaFunc'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLightf'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glClear'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glDisable'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glViewport'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXDestroyPbuffer'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXGetFBConfigAttrib'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glFogf'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGetLightfv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexImage2D'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glColor4fv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glColor3fv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glClipPlane'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glClearAccum'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glReadPixels'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glColor4ubv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGetTexImage'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glPixelStorei'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGetError'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glDepthMask'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDisableClientState'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexParameterf'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGetString'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glColorMaterial'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glEnableClientState'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDepthFunc'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXDestroyContext'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGetTexLevelParameteriv'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXGetProcAddress'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glBlendFunc'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXMakeCurrent'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDrawPixels'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glReadBuffer'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glPolygonMode'
/usr/bin/ld: ../../lib/libosgText.so.3.6.5: undefined reference to `glNormal3f'
/usr/bin/ld: ../../lib/libosgText.so.3.6.5: undefined reference to `glColor4f'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glRasterPos3f'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glNormal3bv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glCopyTexImage2D'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glScissor'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glEnable'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glCopyTexSubImage1D'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glStencilMask'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGetIntegerv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glHint'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glFogi'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glMaterialf'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDrawElements'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glStencilFunc'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glColorPointer'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glVertexPointer'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexEnvi'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLoadMatrixd'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glClearDepth'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLineStipple'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glStencilOp'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXCreateContext'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glBindTexture'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glLoadIdentity'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glCullFace'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glNormal3sv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glCopyTexImage1D'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXCreatePbuffer'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDeleteTextures'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexParameteri'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexEnvf'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glMatrixMode'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXQueryExtensionsString'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXChooseFBConfig'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGenTextures'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXGetFBConfigs'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXQueryVersion'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXGetVisualFromFBConfig'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glNewList'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDrawBuffer'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glFlush'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXChooseVisual'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glNormal3dv'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glClearColor'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexGendv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexImage1D'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glCopyTexSubImage2D'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexParameterfv'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glPolygonStipple'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glScalef'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glGenLists'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXQueryExtension'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glNormal3fv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glPolygonOffset'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glRecti'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glShadeModel'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexSubImage2D'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glNormalPointer'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDepthRange'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glColor4dv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glFogfv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glColor3dv'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glEndList'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLightfv'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXQueryDrawable'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLineWidth'
/usr/bin/ld: ../../lib/libosgViewer.so.3.6.5: undefined reference to `glXSwapBuffers'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glOrtho'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLightModelfv'
/usr/bin/ld: ../../lib/libosgUtil.so.3.6.5: undefined reference to `glClearStencil'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glInterleavedArrays'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexGeni'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexEnvfv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glMaterialfv'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glTexCoordPointer'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glLogicOp'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glFinish'
/usr/bin/ld: ../../lib/libosg.so.3.6.5: undefined reference to `glDeleteLists'
collect2: error: ld returned 1 exit status
gmake[2]: *** [applications/osgviewer/CMakeFiles/application_osgviewer.dir/build.make:115: bin/osgviewer] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:2263: applications/osgviewer/CMakeFiles/application_osgviewer.dir/all] Error 2
gmake: *** [Makefile:136: all] Error 2
download_and_compile.sh: aborting because 'cmake --build' failed in
'/home/user/.flightgear/stable/build/openscenegraph' (exit status 2).
|