Ubuntu下QT的安裝詳細教程

本文轉自:http://blog.chinaunix.net/uid-7945126-id-4987195.html

經測試完美解決

-------------------------------------------------------------

最近需要在Ubuntu下開發桌面軟件,想起了QT。書上介紹的方法太老了,網上找了一大堆安裝方法,都或多或少有各種問題,以下是我自己摸索出來的與大家分享!另外不建議大家現在用QT5,參考資料不多,建議初學者先從QT4學起。本文寫作時間是2013年11月份。


本文使用的環境:

QT Library: 4.8.1http://download.qt-project.org/archive/qt/4.8/4.8.1/qt-everywhere-opensource-src-4.8.1.tar.gz

QT Creator:2.4.1http://download.qt-project.org/archive/qtcreator/2.4/qt-creator-linux-x86-opensource-2.4.1.bin

Ubuntu:10.04.4http://old-releases.ubuntu.com/releases/10.04.0/ubuntu-10.04.4-desktop-i386.iso


安裝QT分為兩步,第一步是QT Library的安裝,第二步是QT Creator的安裝,QT Creator是QT的集成開發環境。

第一步 ? 安裝QT Library:

1、諾基亞把QT賣給Digia后,QT商業版和開源版就分開了,開源版全部放在QT Project網站上,從該網站下載qt-everywhere-opensource-src-4.8.1.tar.gz。可以在Ubuntu里面使用Firefox瀏覽器下載,默認下載目錄是/home/your name/Downloads,使用終端cd到Downloads目錄,然后使用命令


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. tar?xzvf?qt-everywhere-opensource-src-4.8.1.tar.gz??

解壓軟件包,解壓完后,cd到該目錄


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. cd?qt-everywhere-opensource-src-4.8.1??


2、我的電腦在Ubuntu 10.04.4環境下,沒有安裝g++,編譯QT要用到g++,所以首先安裝g++,使用apt-get命令安裝g++,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. sudo?apt-get?install?g++??


3、 然后需要安裝libX11-dev libXext-dev libXtst-dev這三個包,這點非常重要,很多朋友因為沒有安裝這三個包而出現以下錯誤,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. Basic?XLib?functionality?test?failed!??
  2. You?might?need?to?modify?the?include?and?library?search?paths?by?editing??
  3. QMAKE_INCDIR_X11?and?QMAKE_LIBDIR_X11?in?/home/your?name/Qt/qt-x11-opensource-src-4.8.1/mkspecs/linux-g++??

使用apt-get安裝這三個包,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. sudo?apt-get?install?libX11-dev?libXext-dev?libXtst-dev??


4、 如果你的Ubuntu已經安裝g++和libX11-dev libXext-dev libXtst-dev,可以跳過2,3兩步。在進入qt-everywhere-opensource-src-4.8.1目錄后,使用如下命令配置QT Library,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. ./configure??

注意不能直接輸入configure,必須加上 "./" 才可以。然后終端會出現讓你選擇商業版還是開源版,輸入字母o選擇開源版。然后會有協議讓你接受,輸入yes就OK啦。


5、經過漫長地等待后,終端會出現如下信息,

[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. Qt??is?now?configured?for?building?,just?run?'make'??
  2. Once?everything?is?built?,?you?must?run?'make??install'??
  3. Qt?will?be?installed?into?/usr/local/Qt-4.8.1??
  4. To??reconfigure?,run?'make?confclean'?and?'configure'??

然后輸入make,這樣會生成QT庫,同時編譯所有演示程序。


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. make??


6、 QT編譯完成后,輸入make install來安裝QT,注意make install需要root權限,所以要加sudo。


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. sudo?make?install??


7、 經過漫長等待,QT安裝完畢后,首先進入QT安裝目錄測試QT是否安裝成功,QT默認安裝在/usr/local/Trolltech/Qt-4.8.1目錄里面,所以先進入該目錄,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. cd?/usr/local/Trolltech/Qt-4.8.1??

然后在進入qmake所在的bin文件夾,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. cd?bin??

然后輸入qmake,如果出現正常的信息,則表明QT已經安裝成功。或者輸入以下指令,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. qmake?-v??

如果出現正確的版本信息,則表示安裝成功了。


8、接下來要設置環境變量,設置環境變量的目的是為了在任何目錄下都可以使用QT。首先需要設置用戶環境變量,

[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. gedit?/home/your?name/.bashrc???

然后會彈出一個編輯窗口,在末尾添加以下代碼,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. export?QTDIR=/usr/local/Trolltech/Qt-4.8.1???
  2. export?PATH=$QTDIR/bin:$PATH???
  3. export?MANPATH=$QTDIR/man:$MANPATH???
  4. export?LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH??

然后設置root用戶的環境變量,設置root用戶的環境變量需要root權限,所以要加sudo,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. sudo?gedit?/etc/profile??

然后會彈出一個編輯窗口,在末尾添加以下代碼,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. export?QTDIR=/usr/local/Trolltech/Qt-4.8.1???
  2. export?PATH=$QTDIR/bin:$PATH???
  3. export?MANPATH=$QTDIR/man:$MANPATH???
  4. export?LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH??


保存后退出,然后重啟電腦。


9、重啟電腦后,打開終端在任意目錄下輸入qmake,如果能出現正確信息,則表明環境變量已經配置成功。



第二步 ? 安裝QT Creator:


相比QT Library,QT Creator的安裝要簡單的多,我們下載的bin文件是可執行文件,安裝時會出現像在Windows下的界面,安裝路徑默認就可以了。使用終端cd到Downloads目錄,首先修改bin文件的權限使其具有可執行的權限,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. chmod?a+x?qt-creator-linux-x86-opensource-2.4.1.bin??

然后輸入以下命令安裝bin文件,


[plain]?view plaincopy
print?在CODE上查看代碼片派生到我的代碼片
  1. ./qt-creator-linux-x86-opensource-2.4.1.bin??


至此,QT已經安裝完畢,打開桌面上的QT Creator來運行一個demo測試吧!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/383389.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/383389.shtml
英文地址,請注明出處:http://en.pswp.cn/news/383389.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux_linux常用工具---閑雜篇(除了vim, 還有哪些常用的牛逼的編輯器, 并能夠橫向對比編輯器之間的區別和優缺點.)

vim自行查找資料, 自行配置插件. 借鑒別人的 " 顯示相關 “”""""""""""""""""""""""""""""""""&…

ubuntu14.04下安裝qt4.8.6 +qt creator

原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://248341.blog.51cto.com/238341/1438867以前安裝時沒太注意,安裝qt后發現在qt creator下無法輸入中文,或者中文無法…

網絡基礎一(協議的概念,網絡應用程序設計模式)

協議的概念 什么是協議? 從應用的角度出發,協議可理解為“規則”,是數據傳輸和數據的解釋的規則。 假設,A、B雙方欲傳輸文件。規定: 第一次,傳輸文件名,接收方接收到文件名,應答OK…

ubuntu修改root密碼

sudo passwd root [sudo] password for you :---> 輸入你的密碼,不會顯示 Enter new UNIX password: --- > 設置root 密碼 Retype new UNIX password: --> 重復

linux 消息隊列機制

現在我們來討論第三種也是最后一種System V IPV工具:消息隊列。在許多方面看來,消息隊列類似于有名管道,但是卻沒有與打開與關閉管道的復雜關聯。然而,使用消息隊列并沒有解決我們使用有名管道所遇到的問題,例如管道上…

堆(概念,數據結構中堆與內存堆區的區別 ,堆的基本操作)

堆的特性: 必須是完全二叉樹 用數組實現 任一結點的值是其子樹所有結點的最大值或最小值 最大值時,稱為“最大堆”,也稱大根堆; 在完全二叉樹中,任何一個子樹的最大值都在這個子樹的根結點。最小值時,稱為…

makefile中的shell調用---注意事項

在之前一次編寫makfile時候,有看到相關的makefile中使用$$來引用變量,而且嘗試后發現$$使用居然和${}有類似的功能。當時也沒具體追究相關的用法,當然剛才所說的都是錯誤的觀念 $$:在makefile中會被替換成一個$。 相關資料是這么描…

網絡基礎2(分層模型,通信過程,以太網,ARP協議格式和具體功能詳解)

分層模型 OSI七層模型 OSI模型 1 物理層:主要定義物理設備標準,如網線的接口類型、光纖的接口類型、各種傳輸介質的傳輸速率等。它的主要作用是傳輸比特流(就是由1、0轉化為電流強弱來進行傳輸,到達目的地后再轉化為1、0&#…

為github帳號添加SSH keys

使用git clone命令從github上同步github上的代碼庫時,如果使用SSH鏈接(如我自己的beagleOS項目:gitgithub.com:DamonDeng/beagleOS.git),而你的SSH key沒有添加到github帳號設置中,系統會報下面的錯誤&…

網絡基礎3(IP段格式,UDP數據報格式,TCP數據報格式)

IP段格式 IP數據報的首部長度和數據長度都是可變長的,但總是4字節的整數倍。 對于IPv4,4位版本字段是4。4位首部長度的數值是以4字節為單位的,最小值為5,也就是說首部長度最小是4x520字節,也就是不帶任何選項的IP首部…

Linux 開發路線

Linux 開發路線: 使用 linux—〉linxu 系統編程開發---〉驅動開發和分析 linux 內核 開始學 linux 內核:最好有三件寶物:《深入理解 linux 內核》《LINUX內核源代碼情景分析》和源代碼。 《深》是綱,《情》是目。最后深入代碼 Linux 內核原理:比較淺顯…

堆的應用(堆排序,TopK問題)

堆的應用 1)排序 堆排序 選擇排序 既可以找到最大的放在最后 也可以找到最小的方最前 但是,堆排序不能找最小的放在最前 因為把最小數放在最前,會破壞掉堆的原來的順序,除非重新建堆 1, 2,9&#xff0c…

有名管道和無名管道的區別

1)無名管道:管道是半雙工的,數據只能向一個方向流動;需要雙方通信時,需要建立起兩個管道;只能用于父子進程或者兄弟進程之間(具有親緣關系的進程)。 單獨構成一種獨立的文件系統:管道…

網絡基礎4(TCP三次握手,四次握手,TCP流量控制,TCP狀態轉換 , TCP異常斷開,設置TCP屬性,端口復用)

TCP協議 TCP通信時序 下圖是一次TCP通訊的時序圖。TCP連接建立斷開。包含大家熟知的三次握手和四次握手。 TCP通訊時序 在這個例子中,首先客戶端主動發起連接、發送請求,然后服務器端響應請求,然后客戶端主動關閉連接。 兩條豎線表示通訊的…

linux編程手冊讀書筆記第一章(20140329)

(2)管道、FIFO、套接字、設備(比如終端、偽終端)都支持非阻塞模式。(因為無法通過open()來獲取管道和套接字的文件描述符。所以要啟用非阻塞標志,就必須使用fcntl(&#…

排序(基本概念及分類,直接插入排序和希爾排序)

排序的概念 排序:所謂排序,就是使一串記錄,按照其中的某個或某些關鍵字的大小,遞增或遞減的排列起來的操作。 穩定性:假定在待排序的記錄序列中,存在多個具有相同的關鍵字的記錄,若經過排序&a…

Linux編程手冊讀書筆記第二章(20140330)

內核:管理和分配計算機資源(即CPU、RAM和設備)的核心軟件層Linux內核可執行文件采用/boot/vmlinuz或類似的路徑名,“z”表明內核是經過壓縮的可執行文件。內核主要任務: (1&#xff…

直接交換排序

直接交換排序 缺點:進行一些重復性比較,解決放法:堆排序 選擇排序優化 //如果當前的數大于假定最大的數 //改變下標 //如果當前的數小于假定最小的數 //改變下標 //遍歷數組跳到下一個元素 //如果最大的數沒有在它的位置上 //交換 //交換…

Linux編程手冊讀書筆記第三章(20140407)

外殼函數執行一條中斷機器指令(int 0x80),引發處理器從用戶態切換到核心態,并執行系統中斷0x80的中斷矢量所指向的代碼。(在2.6內核及glib 2.3.2之后的版本都支持sysenter指令,進入內核的速度更快&#xff…

Linux編程手冊讀書筆記第四章(20140407)

標準文件描述符定義在<unistd.h>中&#xff0c;STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO打開一個文件&#xff1a;open&#xff08;&#xff09; &#xff03;include<sys/stat.h> #include<fcntl.h> int open(const char *pathname, int flags, …/* …