2014-01-13 77 views
4

在Debian上構建Qt應用程序時遇到問題。Qt debian/ubuntu:無法編譯,錯誤:無法找到-lGL

當我嘗試編譯任何東西,我得到:

/usr/bin/ld: cannot find -lGL collect2: error: ld returned 1 exit status make: *** [test] Error 1 14:38:52: Proces "/usr/bin/make" zakończył się kodem wyjściowym 2.

最後行表示:Procces(...)退出,代碼爲:2

任何想法有什麼不對?

回答

12

由於這是一個鏈接錯誤,你可能有兩個問題之一:

  • 您沒有安裝libGL函數
  • 安裝libGL函數而不是在你的系統路徑。

如果沒有安裝libGL函數,你可以安裝它:

sudo apt-get install libgl1-mesa-dev

,我認爲是正確的包。我沒有一個方便的debian機器,所以我無法測試它。

如果您安裝了該軟件包,則需要將其添加到系統路徑中。您需要將其附加到環境變量LD_LIBRARY_PATH或使.conf文件位於/etc/ld.so.conf.d/中。

同樣,我沒有一臺debian機器來驗證這些路徑,但這是我能從內存中做到最好的。無論哪種方式,這應該是足夠的信息來開始。

祝你好運!

+0

GREAT ............非常感謝 – TOM

1

您需要將相關軟件包安裝到您的路徑中以便能夠與其鏈接。只有正確的標題是不夠的,因爲這隻會讓你通過編譯,而不是聯繫階段。

只要用你的包管理器,因爲它會把你這一切到正確的路徑默認:

sudo apt-get install libgl1-mesa-dev 

而且,請注意,一般如果你沒有或者已經安裝了頭,剛剛擺脫在應用程序中的依賴關係,因爲它意味着你並不真正依賴於庫,只是形式上。

相關問題