2016-01-20 86 views
1

我想設置CodeLite IDE以使用我安裝的OpenGL庫。在Linux上使用Freeglut鏈接CodeLite和OpenGL

標頭是在/ usr/include中/ GL - 這裏的LS的內容:

freeglut_ext.h freeglut_std.h glext.h gl_mangle.h glu_mangle.h glxext.h glxint.h  glxmd.h  glxtokens.h freeglut.h  glcorearb.h  gl.h  glu.h  glut.h  glx.h  glx_mangle.h glxproto.h internal 

這裏是我的簡單的代碼片段:

#include <GL/glut.h> 

    int main(int argc, char** argv) 
    { 
     glutInit(&argc, argv); 
     return 0; 
    } 

最後,這裏是試圖輸出建立這個項目。

/bin/sh -c '/usr/bin/make -j4 -e -f Makefile' 
----------Building project:[ cpptest1 - Debug ]---------- 
make[1]: Entering directory '/home/brandon/codelite/cpptest/cpptest1' 
/usr/bin/g++ -c "/home/brandon/codelite/cpptest/cpptest1/main.cpp" -g -O0 -Wall -lglut -lGL -lGLU -o ./Debug/main.cpp.o -I. -I. -I/usr/include/ 
/usr/bin/g++ -o ./Debug/cpptest1 @"cpptest1.txt" -L. -L/usr/include/GL -lGL 
./Debug/main.cpp.o: In function `main': 
/home/brandon/codelite/cpptest/cpptest1/main.cpp:5: undefined reference to `glutInit' 
collect2: error: ld returned 1 exit status 
cpptest1.mk:76: recipe for target 'Debug/cpptest1' failed 
make[1]: *** [Debug/cpptest1] Error 1 
make[1]: Leaving directory '/home/brandon/codelite/cpptest/cpptest1' 
Makefile:4: recipe for target 'All' failed 
make: *** [All] Error 2 
====2 errors, 0 warnings==== 

請注意,我可以通過在命令行中使用g++ -o a.out main.cpp -lglut -lGL來創建適當的二進制文件。

我甚至可以使用CodeLite自己編譯main.cpp文件。我不能建立這個項目。

回答

2

這是一個連接問題,可以解決如下:

項目設置>鏈接

添加GL和過剩的庫,並引導他們到您的包括(對於Linux,/ usr/include目錄/ GL)

Linker Screenshot

另外,確保添加-lglut和-lGL作爲構建標誌編譯器。最好將它們添加爲全局設置,以便在調試和發佈之間切換時不會中斷配置