本文記錄PC(x86)下安裝
Linux/X11版Qt 開發環境。下載頁面:
http://qt-project.org/downloads
ARM嵌入式版本qt庫的編譯安裝詳見
《unbunt12.04編譯安裝qt-embedded-4.8.1》
------
我們選擇qt-everywhere-opensource-src-4.8.5.tar.gz版本。選擇Qt libraries 4.8.5 for Linux/X11 (230 MB) (Info) 得到qt-everywhere-opensource-src-4.8.5.tar.gz,這個和 Qt libraries 4.8.5 for embedded Linux (230 MB) (Info) 是同一個文件,配置不同就可以編譯出不同的版本,這就是“everywhere”版本的本意~,其默認編譯安裝的是X11(即PC)版本!
-------------------------------------------
安裝Linux/X11版Qt:
#
tar -xvzf qt-everywhere-opensource-src-4.8.5.tar.gz
#
cd qt-everywhere-opensource-src-4.8.5
#./
configure -prefix /opt/qt-4.8.5-x11
#
make
#
make install
因為庫比較大,要編譯好需要
大約一個半小時,-prefix后面的是安裝目錄,根據需要修改。
在編譯過程中出錯,提示
g++: error: unrecognized command line option ‘-fuse-ld=gold’
解決方法:
這是Qt的一個bug:https://bugs.webkit.org/show_bug.cgi?id=89312
在裝有gold linker的系統里,編譯腳本會加入-fuse-ld=gold選項,但這個選項gcc是不支持的。解決辦法是移除該選項,找到文件src/3rdparty/webkit/Source/common.pri,屏蔽QMAKE_LFLAGS+=-fuse-ld=gold。
# QMAKE_LFLAGS+=-fuse-ld=gold
在編譯過程中出錯,提示
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/duliqun/qt- everywhere-opensource-src-4.8.5/mkspecs/linux-g++.
解決方法:
g++在/usr/X11R6/lib下,找不到libXext.so。其原因就在於需要安裝libX11的開發包,在ubuntu/debian里包名都是libX11-dev根據以往的經驗,在./configure前主動裝好下面3個包:sudo apt-get install libX11-dev libXext-dev libXtst-dev
若安裝成功,則在/opt/qt-4.8.5-x11下即會產生相關文件:

http://blog.163.com/dingmz_frcmyblog/blog/static/217304023201422844445702/