系統(tǒng)之家 - 系統(tǒng)光盤(pán)下載網(wǎng)站!

當(dāng)前位置:系統(tǒng)之家 > 系統(tǒng)教程 > Linux建立Qt環(huán)境

Linux建立Qt環(huán)境的步驟

時(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í)下吧。

 Linux建立Qt環(huán)境的步驟

  一、安裝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等。

標(biāo)簽 QT

發(fā)表評(píng)論

0

沒(méi)有更多評(píng)論了

評(píng)論就這些咯,讓大家也知道你的獨(dú)特見(jiàn)解

立即評(píng)論

以上留言僅代表用戶個(gè)人觀點(diǎn),不代表系統(tǒng)之家立場(chǎng)

其他版本軟件

熱門(mén)教程

人氣教程排行

Linux系統(tǒng)推薦

官方交流群 軟件收錄