**:
實驗問題:執行最簡單」hello world!」,出現can』t find -lgl的問題
實驗陣地: ubuntu14.04+qt5.2
問題解答:
(1)如果是問題1,這個好辦。只要安裝libgl即可。這個在其他部落格中也都有提到。
如只需終端執行
$sudo apt-get install build-essential
$sudo apt-get install libgl1-mesa-dev
安裝libgl即可。(libgl是opengl的庫)
(2)如果是問題2,就稍微難辦一點。
首先,我們利用命令
$/sbin/ldconfig -v | grep gl
檢視所有有關gl的鏈結庫的鏈結關係。
如果是問題2,則會有這樣的列印資訊
/sbin/ldconfig.real: cannot stat /usr/lib/x86_64-linux-gnu/mesa/libgl.so: no such file or directory
表示」無法獲取libgl的鏈結資訊:沒有該檔案或目錄」。我們進入/usr/lib/x86_64-linux-gnu/mesa/
$cd /usr/lib/x86_64-linux-gnu/mesa/
確實能找到libgl.so。但因為不存在與之相關的硬鏈結,而導致libgl.so失效。
這時候,應該怎麼辦呢?
a)首先我們進一步確認一下libgl.so是否失效。(畢竟之後涉及到在/usr/lib/x86_64-linux-gnu資料夾下刪除,一不小心刪錯了,可是要命的)
$ls -l libgl.so
lrwxrwxrwx 1 root root 13 12月 4 20:42 libgl.so -> ../libgl.so.1
如果出現
0 libgl.so
或其他錯誤資訊,則說明這個libgl.so已經失效。
b)之後,搜尋是否存在libgl.so的硬鏈結。(一般如果第一步,安裝已經做過的話,是肯定存在的)
$cd
$sudo find /usr/lib/ -name libgl.so*
列印資訊
/usr/lib/x86_64-linux-gnu/mesa/libgl.so
/usr/lib/x86_64-linux-gnu/libgl.so.1.0.0
/usr/lib/x86_64-linux-gnu/libgl.so
/usr/lib/x86_64-linux-gnu/libgl.so.1
我們發現在/usr/lib/x86_64-linux-gnu/資料夾下存在硬鏈結libgl.so.1.0.0
接下來,我們的問題就只剩下如何讓/usr/lib/x86_64-linux-gnu/mesa/libgl.so關聯上/usr/lib/x86_64-linux-gnu/libgl.so.1.0.0
由於在/usr/lib/x86_64-linux-gnu/中libgl.so.1是libgl.so.1.0.0的軟鏈結,所以我們只要將/usr/lib/x86_64-linux-gnu/mesa/libgl.so關聯上/usr/lib/x86_64-linux-gnu/libgl.so.1即可
執行以下操作
$cd /usr/lib/x86_64-linux-gnu/mesa/
$sudo rm libgl.so #刪除libgl.so
$sudo ln -s ../libgl.so.1 libgl.so #建立軟鏈結
重新執行
ls -l libgl.so
這時應該會有列印資訊
lrwxrwxrwx 1 root root 13 12月 4 20:42 libgl.so -> ../libgl.so.1
再次執行
$/sbin/ldconfig -v | grep gl
錯誤
/sbin/ldconfig.real: cannot stat /usr/lib/x86_64-linux-gnu/mesa/libgl.so: no such file or directory
會消失。
重新編譯qt,編譯成功!
解決ADB server didn t ACK問題
之前執行eclipse執行android應用都沒問題,今天突然出問題了,控制台報錯 the connection to adb is down,and a severe error has occured.you must restart adb and eclipse.please ensure ...
解決ADB server didn t ACK問題
之前執行eclipse執行android應用都沒問題,今天突然出問題了,控制台報錯 the connection to adb is down,and a severe error has occured.you must restart adb and eclipse.please ensure ...
解決ADB server didn t ACK問題
執行eclipse執行android應用,控制台報錯 the connection to adb is down,and a severe error has occured.you must restart adb and eclipse.please ensure that adb is cor...