今天寫了個最簡單的Opengl程序,可是發現怎麼都有錯誤,一直提示
/tmp/ccQSf6CG.o:7.cpp:function display(): error: undefined reference to 'gluLook
首先從網上查找解決方法,說可以利用鏈接動態鏈接庫來解決
我的方法是
g++ 7.cpp -o 7.out -I /usr/lib/i386-linux-gnu/libglut.so.3
/usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGLU.so.1 -lGL
出現的問題更加的多
cc1plus: 警告: /usr/lib/i386-linux-gnu/libglut.so.3: not a directory [默認啓用]
/tmp/ccsdnkgf.o:7.cpp:function display(): error: undefined reference to 'glutWireCube'
/tmp/ccsdnkgf.o:7.cpp:function display(): error: undefined reference to 'glutSwapBuffers'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutInit'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutInitDisplayMode'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutInitWindowSize'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutInitWindowPosition'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutCreateWindow'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutReshapeFunc'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutDisplayFunc'
/tmp/ccsdnkgf.o:7.cpp:function main: error: undefined reference to 'glutMainLoop'
沒有辦法,最後發現很簡單,是因爲我沒有鏈接到GLU庫
g++ -lGL -lGLU -lglut 7.cpp -o 7.out
就沒有錯誤出現了