linux下配置Qt5 開發環境

第一步很簡單,就是從官網下載安裝包或者下載源碼自己編譯,直接下載.run安裝包進行安裝。從官網http://download.qt.io/official_releases/qt/5.5/5.5.1/qt-opensource-linux-x86-5.5.1.run下載安裝包。下載之後賦與.run可執行權限。

第二步,雙擊安裝。

第三步,要重點強調一下。官網上也有重點說明。

The Qt installers for Linux assume that a C++ compiler, debugger, make, and other development tools are provided by the host operating system. In addition, building graphical Qt applications requires OpenGL libraries and headers installed. Most Linux distributions do not install all of these by default, but setting up a development environment is still straightforward.

翻譯如下:

linux下的Qt安裝程序自身不帶有C++編譯器、調試器、make程序等開發工具。安裝者要確認自己的linux系統中已經存在了這些開發工具。同時,對於用Qt開發圖形界面,Qt會用到openGL的相關庫文件和頭文件。雖然絕大多數的linux發行版中都沒有預置安裝這些開發工具,但是要安裝它們,也是非常簡單的。用一行安裝命令即可安裝完畢。

Debian/Ubuntu (apt-get)

sudo apt-get install build-essential libgl1-mesa-dev

Fedora/RHEL/CentOS (yum)
sudo yum groupinstall "C Development Tools and Libraries"
sudo yum install mesa-libGL-devel

openSUSE (zypper)
sudo zypper install -t pattern devel_basis
 

還差最後一步。執行完上述命令之後,我們先來編譯一個圖形界面程序來看看。


報錯了。cannot find -lxxx意思是編譯過程找不到對應庫文件。其中,-lxxx表示鏈接庫文件 libxxx.so。

一般出現這種錯誤有以下幾種原因:
1.系統缺乏對應的庫文件;
2.版本不對應;
3.庫文件的鏈接錯誤;
4.庫文件路徑設置問題;

對應第一第二種情況,可以通過下載安裝lib來解決,Ubuntu大多數可以直接通過apt-get來安裝:apt-get install libxxx-dev

因爲我們前面已經安裝過openGL的動態鏈接庫libgl1-mesa-dev了。所以我們這裏出錯屬於後面兩種情況

這也正是最後一步需要設置的地方。cannot find -lGL 錯誤是指沒有找到openGL庫。雖然已經安裝過libgl1-mesa-dev,但是qt沒有找到,我們打開qt的gcc的lib文件夾,我的是在/home/macrofun/Qt5.5.1/5.5/gcc/lib/ 下面。發現裏面確實沒有libGL.so這個文件。

再到系統的/usr/lib/ 下面去看一下,也沒有發現libGL.so這個文件。

原因找到,是沒有建立正確的動態庫鏈接所致


定位下libGL這個庫在哪。然後在qt的gcc/lib目錄或者在系統的 /usr/lib/目錄下面創建對應的軟鏈接即可。

輸入命令 locate libGL.so


我需要的是32位的,通過locate發現剛安裝的.so最新版本是1.2.0,那就用這個了。

ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0  /usr/lib/libGL.so

或者

ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0 /home/macrofun/Qt5.5.1/5.5/gcc/lib/libGL.so

再次編譯,OK。


=========================================================

寫在後面的話:

注意,如果你需要的是32位的openGL動態鏈接庫,而你鏈接用的是64位的庫文件,那麼,還是會報錯的。

error:skipping incompatible /home/macrofun/Qt5.5.1/5.5/gcc/lib/libGL.so when searching for -lGL




發佈了109 篇原創文章 · 獲贊 49 · 訪問量 27萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章