g ++链接器:/usr/lib/libGL.so.1:无法读取符号:无效的操作

phi*_*mue 10 c++ opengl linker glut

我正在尝试在Ubuntu 10.04下构建一个非常简单的OpenGL应用程序(我有一个32位系统).

当我尝试编译该文件时,我收到错误消息:

g++ -L/usr/lib simple.cpp -lglut
/usr/bin/ld: /tmp/ccoPczAo.o: undefined reference to symbol 'glEnd'
/usr/bin/ld: note: 'glEnd' is defined in DSO //usr/lib/libGL.so.1 so try adding it to the linker command line
//usr/lib/libGL.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

有人知道我做错了什么吗?

jco*_*der 16

您需要在命令行以及glut库/中包含opengl库.尝试将-lGL添加到命令行的末尾

g++ -L/usr/lib simple.cpp -lglut -lGL
Run Code Online (Sandbox Code Playgroud)

  • 任何人都可以解释为什么打印`/usr/lib/libGL.so.1:无法读取符号:无效的操作`?这看起来像是试图读取丢失的库,但是失败了. (10认同)