2015-05-18 118 views
2

我錯誤地將我的qt版本從4.8.5更新到了4.8.6。這是由於python anaconda安裝造成的。Ubuntu 14.04 - Qt版本選擇

但是我正在研究一個需要qt 4.8.5的項目。

運行qmake -v顯示:

$ qmake -v 
QMake version 2.01a 
Using Qt version 4.8.6 in home/<username>/anaconda/lib 

如何切換到我以前的QT版本(安裝在默認目錄,即在/ usr/...)?

qtchooser列出了以下選項:

$ qtchooser -list-versions 
4 
5 
default 
qt4-i386-linux-gnu 
qt4-x86_64-linux-gnu 
qt4 
qt5-x86_64-linux-gnu 
qt5 

但是,試圖export QT_SELECT與每一個選項沒有更改消息:

Using Qt version 4.8.6 in home/<username>/anaconda/lib 

我會非常感謝你的幫助。

+2

它們不兼容嗎?有什麼問題? – trojanfoe

+0

@trojanfoe顯然,Qt4.8.6與該項目使用的其他庫不兼容。 – Nfys

+3

@Nfys是不是在其他庫中的錯誤? –

回答

3

你可以很容易地使用幾個版本的Qt。所有你需要做的是 - 打電話qmake,與所需的版本。例如:

/usr/local/Trolltech/Qt-4.8.5/bin/qmake -v 

使用QtCreator,您可以在Tools/Options.../Build & Run添加的Qt版本(上QtCreator一些版本將需要創建一個工具包還,這是不是很辛苦)的Qt版本在項目的設置之間進行切換。

我面臨的唯一問題是 - 使用cmake(討厭這塊垃圾)。在這種情況下,您需要更改調用不同版本的qmake的順序。首先,找出您的默認qmake所在的位置(which qmake),然後 - 無論它是否是符號鏈接(奇怪的是,Qt安裝在您的主目錄中,而不使用完整路徑調用)。如果它是一個鏈接,那麼將其從一個Qt的版本更改爲另一個。如果不是 - 檢查echo $PATH。你可以做什麼:你可以爲Qt4.8.5的qmake創建一個符號鏈接到一個目錄,該目錄位於Qt4.8.6的qmake所在的目錄之前。或者你可以在你的$PATH的第一個位置添加它的路徑(sudo nano /etc/environment重要 - 在某些操作系統/ etc/environment中將是空的,在這種情況下,你需要在那裏寫整個$PATH,如echo PATH=\"/usr/local/Trolltech/Qt-4.8.5/bin:$PATH\" > /etc/environment)。

+0

非常感謝您的回答。事實上,我的問題是與cmake。我注意到,我收到一條消息:「某些目錄中的文件可能與隱含目錄中的庫衝突」。有沒有辦法明確告訴cmake不要查看'〜/ anaconda/lib'? – Nfys

+0

'cmake'使用Qt版本,使用'FindQt4.cmake'(我的位置在這裏 -/usr/share/cmake-2.8/Modules/FindQt4.cmake')。正如答案中所描述的那樣,只需在'$ PATH'變量中移動早先需要版本的'qmake'路徑即可。 – Amartel

+1

我只爲我+1了,因爲我也討厭cmake這件垃圾。 – Gauthier