2
我想在msys上使用g ++編譯一個簡單的opengl程序。令我驚訝的鏈接器抱怨未定義引用:奇怪的g ++鏈接行爲取決於參數順序
$ g++ -mwindows -lopengl32 glut_md2.cpp
C:\Users\...\cceQtYAy.o:glut_md2.cpp:(.text+0x67a): undefined reference to `[email protected]'
C:\Users\...\cceQtYAy.o:glut_md2.cpp:(.text+0x696): undefined reference to `[email protected]'
....
Google上搜尋了一段時間後,我發現這個問題是在G ++參數命令:
$ g++ glut_md2.cpp -mwindows -lopengl32
--- all ok! ---
有趣的是,正確的說法訂單在g ++中是第一個例子。那就是:
$ g++ --help
Usage: g++.exe [options] file...
....
我錯過了什麼嗎?爲什麼在之後移動選項文件參數使編譯成功?我在linux上本地編譯時從來沒有遇到過這個問題......
奇怪。我認爲g ++應該以任何方式將鏈接選項傳遞給鏈接器,因爲它在上面的示例中非常明確。巫術魔法...... – gundra