熱搜:win11繞過(guò)硬件限制安裝 一鍵重裝Win10系統(tǒng) 最干凈的u盤(pán)啟動(dòng)盤(pán) 真正純凈版的win7系統(tǒng)
時(shí)間:2015-03-17 17:52:32 作者:qipeng 來(lái)源:系統(tǒng)之家 1. 掃描二維碼隨時(shí)看資訊 2. 請(qǐng)使用手機(jī)瀏覽器訪問(wèn): https://m.xitongzhijia.net/xtjc/20150317/41691.html 手機(jī)查看 評(píng)論 反饋
要想在Linux下使用Qt,在安裝Qt前需要先安裝G++環(huán)境,安裝后還需設(shè)置環(huán)境變量,只需七個(gè)步驟就能完成Qt開(kāi)發(fā)環(huán)境的搭建,下面小編就給大家詳細(xì)介紹下Linux如何搭建Qt環(huán)境,一起來(lái)學(xué)習(xí)下吧。
一、安裝G++環(huán)境
sudo apt-get install build-essential
另外的一些相關(guān)環(huán)境。如果不安裝,一些qt的組件是無(wú)法正常編譯的,例如openGL
sudo apt-get install libx11-dev libxau-dev libxaw7-dev libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev
sudo apt-get install libxext-dev libxfixes-dev libxfont-dev libxft-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev
sudo apt-get install libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev
sudo apt-get install libglib2.0-dev
sudo apt-get install libssl-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install libcups2-dev
sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev
sudo apt-get install libgstreamer0.10-dev
二、解壓代碼
tar zxvf qt-everywhere-opensource-src-4.8.4.tar.gz
解壓完進(jìn)入解壓后的源代碼文件夾
三、執(zhí)行。/configure生成makefile
。/configure -prefix /usr/local/Qt-4.8.2
。ㄉ厦嬷付ǖ倪@個(gè)目錄/usr/local/Qt-4.8.2 ,就是make install 后的安裝目錄)
下面出現(xiàn)對(duì)話框選擇open source edition.這是自由版。輸入yes接受協(xié)議。
。1)如果你的機(jī)器各種庫(kù)文件完整,經(jīng)過(guò)一小會(huì),配置完成,會(huì)出現(xiàn)以下信息
Qt is now configured for building ,just run ‘make’
Once everything is built , you must run ‘make install’
Qt will be installed into /usr/local/Qt-4.8.2
To reconfigure ,run ‘make confclean’ and ‘configure’
說(shuō)明Makefile文件生成成功
(2)如果出現(xiàn)以下信息
Basic XLib functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in /home/gcgily/qt-everywhere-opensource-src-4.8.4/mkspecs/linux-g++
還是老辦法,以不變應(yīng)萬(wàn)變。進(jìn)config.test/x11/xlib 執(zhí)行make命令,看出錯(cuò)信息
g++ -Wl,-O1 -o xlib xlib.o -L/usr/X11R6/lib -lXext -lX11 -lm
/usr/bin/ld: cannot find -lXext
看到了吧,g++在/usr/X11R6/lib下,找不到libXext.so呢。
其原因就在于需要安裝libX11的開(kāi)發(fā)包,在Ubuntu/debian里包名都是libX11-dev
根據(jù)以往的經(jīng)驗(yàn),在。/configure前主動(dòng)裝好下面3個(gè)包,基本上就萬(wàn)事大吉了
sudo apt-get install libX11-dev libXext-dev libXtst-dev
安裝所需到包后再重新。/configure即可生成Makefile文件
如果出現(xiàn):Project ERROR: Package gstreamer-app-0.10 not found,則執(zhí)行以下命令
apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev如果出現(xiàn) : g++: error: unrecognized command line option ‘-fuse-ld=gold’
這是Qt的一個(gè)bug:https://bugs.webkit.org/show_bug.cgi?id=89312
在裝有g(shù)old linker的系統(tǒng)里,編譯腳本會(huì)加入-fuse-ld=gold選項(xiàng),但這個(gè)選項(xiàng)gcc是不支持的。解決辦法是移除該選項(xiàng),找到文件src/3rdparty/webkit/Source/common.pri,屏蔽QMAKE_LFLAGS+=-fuse-ld=gold。
#
QMAKE_LFLAGS+=-fuse-ld=gold
四、編譯QT
執(zhí)行make命令,需要2個(gè)小時(shí)。
五、安裝QT
運(yùn)行sudo make install命令。需要幾分鐘時(shí)間,默認(rèn)安裝到/usr/local/Qt-4.8.2. 運(yùn)行/usr/local/Qt-4.5.3/bin/designer ,若能啟動(dòng)QT,說(shuō)明QT已經(jīng)安裝好了。
六、設(shè)置環(huán)境變量
更改用戶環(huán)境變量
gedit /home/username/.bashrc
添加:
export QTDIR=/usr/local/Qt-4.8.2
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
更改包括root用戶的環(huán)境變量
sudo gedit /etc/profile (此處profile文件要更改一下權(quán)限才能寫(xiě)入)
添加:
export QTDIR=/usr/local/Qt-4.8.2
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
七、測(cè)試環(huán)境變量
重啟測(cè)試環(huán)境變量:
qmake -v
顯示版本信息:
QMake version 2.01a
Using Qt version 4.8.2 in /usr/local/Qt-4.8.2/lib
which qmake
顯示安裝位置信息:
/usr/local/Trolltech/Qt-4.8.2/bin/qmake
環(huán)境變量設(shè)置成功。
代碼:
如果需要在Qt中引用其他的包以及庫(kù)文件,則使用:
INCLUDEPATH += /usr/local/include/
INCLUDEPATH += /usr/local/include/Eigen
INCLUDEPATH += /usr/local/include/boost
INCLUDEPATH += /usr/local/include/CGAL
LIBS += -L/usr/local/lib/ -lgmp
LIBS += -L/usr/local/lib/ -lmpfr
其中LIBS參數(shù)中 -l后只能接特定某一個(gè)庫(kù)文件,且如果該文件為 “libxxx.so“,則-l后只接“xxx”。
上面就是Linux搭建Qt開(kāi)發(fā)環(huán)境的方法介紹了,作為一個(gè)良好的跨平臺(tái)開(kāi)發(fā)工具,Qt能夠很好的運(yùn)行于更大主流系統(tǒng),擁有豐富的API等。
發(fā)表評(píng)論
共0條
評(píng)論就這些咯,讓大家也知道你的獨(dú)特見(jiàn)解
立即評(píng)論以上留言僅代表用戶個(gè)人觀點(diǎn),不代表系統(tǒng)之家立場(chǎng)