McNopper/OpenGL

Build failed with CMake on Linux

zuck opened this issue · 2 comments

zuck commented

Commands:

git clone https://github.com/McNopper/OpenGL.git
cd OpenGL
git submodule update --init --recursive
cmake .
make

System:

  • Ubuntu 16.04
  • CMake 3.12.0

Output:

CMakeFiles/Example01.dir/src/main.c.o: In function `init':
main.c:(.text+0x19): undefined reference to `glClearColor'
CMakeFiles/Example01.dir/src/main.c.o: In function `reshape':
main.c:(.text+0x47): undefined reference to `glViewport'
CMakeFiles/Example01.dir/src/main.c.o: In function `update':
main.c:(.text+0x61): undefined reference to `glClear'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `glusWindowGetElapsedTime':
glus_window_glfw.c:(.text+0xb9): undefined reference to `glfwGetTime'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `_glusWindowInternalClose':
glus_window_glfw.c:(.text+0x199): undefined reference to `glfwSetWindowShouldClose'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `_glusWindowInternalKey':
glus_window_glfw.c:(.text+0x1d6): undefined reference to `glfwSetWindowShouldClose'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `glusWindowDestroy':
glus_window_glfw.c:(.text+0x3f8): undefined reference to `glfwMakeContextCurrent'
glus_window_glfw.c:(.text+0x407): undefined reference to `glfwDestroyWindow'
glus_window_glfw.c:(.text+0x417): undefined reference to `glfwTerminate'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `glusWindowCreate':
glus_window_glfw.c:(.text+0x4a8): undefined reference to `glfwInit'
glus_window_glfw.c:(.text+0x4e0): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x52a): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x57b): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x598): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x5e9): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x606): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x657): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x674): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x6c5): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x6e2): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x733): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x750): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x7a1): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x7be): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x834): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x887): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x8dd): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x918): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0x945): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x954): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x9ce): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0x9dc): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xa21): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0xa2f): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xa80): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0xa8a): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xae0): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xb34): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0xb3b): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xb87): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xbc7): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0xbfe): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0xc20): undefined reference to `glfwWindowHint'
glus_window_glfw.c:(.text+0xc27): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xc6d): undefined reference to `glfwGetPrimaryMonitor'
glus_window_glfw.c:(.text+0xc8e): undefined reference to `glfwCreateWindow'
glus_window_glfw.c:(.text+0xca6): undefined reference to `glfwTerminate'
glus_window_glfw.c:(.text+0xcd3): undefined reference to `glfwMakeContextCurrent'
glus_window_glfw.c:(.text+0xcd9): undefined reference to `glewExperimental'
glus_window_glfw.c:(.text+0xcdf): undefined reference to `glewInit'
glus_window_glfw.c:(.text+0xd15): undefined reference to `glGetError'
glus_window_glfw.c:(.text+0xd69): undefined reference to `glfwSetWindowSizeCallback'
glus_window_glfw.c:(.text+0xd7d): undefined reference to `glfwSetWindowCloseCallback'
glus_window_glfw.c:(.text+0xd91): undefined reference to `glfwSetKeyCallback'
glus_window_glfw.c:(.text+0xda5): undefined reference to `glfwSetMouseButtonCallback'
glus_window_glfw.c:(.text+0xdb9): undefined reference to `glfwSetScrollCallback'
glus_window_glfw.c:(.text+0xdcd): undefined reference to `glfwSetCursorPosCallback'
glus_window_glfw.c:(.text+0xde6): undefined reference to `glfwGetWindowSize'
glus_window_glfw.c:(.text+0xe10): undefined reference to `__glewDebugMessageCallback'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `glusWindowLoop':
glus_window_glfw.c:(.text+0xee0): undefined reference to `glfwWindowShouldClose'
glus_window_glfw.c:(.text+0xf16): undefined reference to `glfwSetWindowShouldClose'
glus_window_glfw.c:(.text+0xf25): undefined reference to `glfwSwapBuffers'
glus_window_glfw.c:(.text+0xf2a): undefined reference to `glfwPollEvents'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `glusWindowLoopDoRecording':
glus_window_glfw.c:(.text+0xf55): undefined reference to `glfwWindowShouldClose'
glus_window_glfw.c:(.text+0xf98): undefined reference to `glfwSetWindowShouldClose'
glus_window_glfw.c:(.text+0x100d): undefined reference to `glfwSetWindowShouldClose'
glus_window_glfw.c:(.text+0x101c): undefined reference to `glfwSwapBuffers'
glus_window_glfw.c:(.text+0x1021): undefined reference to `glfwPollEvents'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `glusWindowSwapInterval':
glus_window_glfw.c:(.text+0x1078): undefined reference to `glfwSwapInterval'
../lib/libGLUS.a(glus_window_glfw.c.o): In function `glusExtensionGetFuncAddress':
glus_window_glfw.c:(.text+0x10ab): undefined reference to `glfwGetProcAddress'
../lib/libGLUS.a(glus_log.c.o): In function `glusLogPrintError':
glus_log.c:(.text+0x1e5): undefined reference to `glGetError'
../lib/libGLUS.a(glus_math.c.o): In function `glusMathLengthf':
glus_math.c:(.text+0x159): undefined reference to `sqrtf'
../lib/libGLUS.a(glus_screenshot.c.o): In function `glusScreenshotUseTga':
glus_screenshot.c:(.text+0x7b): undefined reference to `__glewBindFramebuffer'
glus_screenshot.c:(.text+0x8c): undefined reference to `glFlush'
glus_screenshot.c:(.text+0x9b): undefined reference to `glPixelStorei'
glus_screenshot.c:(.text+0xaa): undefined reference to `glPixelStorei'
glus_screenshot.c:(.text+0xe5): undefined reference to `glReadPixels'
../lib/libGLUS.a(glus_version.c.o): In function `glusVersionIsSupported':
glus_version.c:(.text+0x14): undefined reference to `glGetString'
../lib/libGLUS.a(glus_image.c.o): In function `_glusImageGatherSamplePoints':
glus_image.c:(.text+0xc6): undefined reference to `floorf'
collect2: error: ld returned 1 exit status
Example01/CMakeFiles/Example01.dir/build.make:84: recipe for target 'build/Example01' failed
make[2]: *** [build/Example01] Error 1
CMakeFiles/Makefile2:218: recipe for target 'Example01/CMakeFiles/Example01.dir/all' failed
make[1]: *** [Example01/CMakeFiles/Example01.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

same problem

Hmm, someone else did code the CMake stuff.