2011-05-29 32 views
0

我已經看到了2個帖子與這個相同的問題,但一個是與視覺工作室和其他沒有工作,所以在這裏。我正在嘗試編譯開放聖經第5版帶來的第一個源代碼......但我試圖用code :: blocks ide做到這一點。 我以爲我已經正確安裝了Freeglut(因爲我可以運行C :: B自帶的glut程序),但是我從glut和glu得到了很多錯誤...之後我想我修復了那些問題,現在我得到了超過50錯誤,我不知道是什麼導致他們。 錯誤這個樣子的OpenGL聖經第5版代碼問題

obj\Debug\main.o(.text+0x2eb):C:\Users|20|undefined reference to `GLShaderManager::~GLShaderManager()'| 

C:\Users\t\main.cpp|27|undefined reference to glViewport @ 16' |`

所有的錯誤都非常相似,但未定義的引用更改爲另一個OpenGL的功能。

任何幫助將不勝感激,只是問你是否需要源代碼或更多的錯誤。加入glu32到鏈接後

編輯
它擺脫了關於該 所有的錯誤,但有似乎與我freeglut安裝我收到錯誤

obj\Debug\main.o(.text+0x1c)||In function `glutInit_ATEXIT_HACK':| 

freeglut_std.h|610|undefined reference to `[email protected]'| 

obj\Debug\main.o(.text+0x3f)||In function `glutCreateWindow_ATEXIT_HACK':| 

freeglut_std.h|612|undefined reference to `[email protected]'| 

obj\Debug\main.o(.text+0x61)||In function `glutCreateMenu_ATEXIT_HACK':| 

freeglut_std.h|614|undefined reference to `[email protected]'| 

解決免費過剩問題的問題......我不得不使用不同的庫文件....我從here

編輯2
得到了他們我有freeglut工作,現在這本書使用的自定義庫,給了我一個錯誤...我相信這是因爲我試圖使用.lib文件(這是它是什麼)這可能是源我的所有錯誤...... C :: B鏈接.lib文件還是隻爲圖書館使用.a和.o文件?

+1

.lib文件是爲Visual Studio。 C :: B使用MinGW(= gcc)並需要.a文件。如果你沒有使用任何庫的.a文件,你必須使用C :: B重建它。 – Calvin1602 2011-05-31 12:00:21

回答

2

您必須添加適當的庫來與之鏈接。

對於C :: B,

  • 轉到項目
  • 選擇Build選項
  • 選擇鏈接器
  • 添加的OpenGL,Glu32庫到您的項目。

回答您的編輯:

按照以下步驟在這裏:http://www.sci.brooklyn.cuny.edu/~goetz/codeblocks/glut/

+0

是位於glu32庫嗎? – 2011-05-29 04:53:15

+1

在'path \ to \ codeblocks \ lib \' – SuperSaiyan 2011-05-29 05:03:54

+0

我已更新我的問題...任何想法? – 2011-05-29 05:20:03