当我在公司电脑ubuntu12.04下使用 gcc -lglut -lGLU view.c -o view 编译 opengl 程序时,编译运行正常。
回到家里同样是ubuntu12.04下,使用 gcc -lglut -lGLU view.c -o view 编译 opengl 程序时,却出现链接错误。
$ gcc -lglut -lGLU view.c -o view
出现opengl链接错误 undefined reference to `glutInit'
... ...
改变下gcc参数顺序,将程序代码放到链接库的前面,编译成功
$ gcc view.c -lglut -lGLU -o view
突然想去:
家里电脑 gcc 的版本是 4.6.3,
而公司里 gcc 确是4.4.7的。
好郁闷啊。
还有一种情况是编译成功,运行出错:
X Error of failed request: BadWindow (invalid Window parameter)原因是显卡驱动不对,在系统驱动附加驱动里激活显卡驱动,即可。