2012-10-09 199 views
3

簡而言之,問題是:我剛剛在Linux Ubuntu上運行的計算機上使用Qt Creator完成了我的第一個應用程序,現在我該如何爲每個人提供此應用程序。現在跟着更詳細的版本;)部署Qt應用程序

我必須道歉的這個問題,我知道這個問題可能已被問了很多次,並有官方文件,我可以閱讀。我對編程完全陌生,至今我讀過的所有內容都讓我感到困惑。如果你有足夠的幫助,請假設我知道什麼都不是:)

這裏我們走吧:我剛剛在我的筆記本電腦上用Qt創建器設計了我的第一個應用程序(一個科學程序),它在Linux Ubuntu下運行。它工作正常,我很自豪;)

這是我的項目包括:40個頭文件,42個源文件,1個pro文件,1個qrc文件,1個html文件和7個png文件。在代碼中,我使用#include來處理一些相當標準的Qt類(QWidget,QTextBrowser等等,可能就是其中的40個)。

現在我想將其提供給其他人。對於Linux和Mac用戶,我已經想出了一個辦法:我可以壓縮包含我的項目的文件夾,告訴他們在他們的計算機上安裝Qt,然後下載並提取他們硬盤上的文件,在文件夾,運行

qmake myProject.pro 
qmake 
make 

這似乎很好地工作(順便說一下,這很重要,這不正是做什麼Qt Creator的呢?qmake一步有qmake-qt4 myProject.pro -r -spec linux-g++和化妝步驟是make -w)。現在,我假設有一個解決方案,我不要求他們下載和安裝200Mo Qt材料。至於微軟Windows用戶,我沒有線索。

如果你能以非常具體的方式向我解釋我需要做什麼,我將不勝感激。不用說,我會選擇最好,最簡單的解決方案,我不需要了解有關部署的所有內容。提前謝謝了!

編輯:如果這是有用的:我一直在使用基於Qt 4.8.1(64位),Qt Creator的2.5.0,我工作的一臺筆記本電腦與Ubuntu 12.04 64位

回答

3

對於Linux和Mac用戶,我會以32位和64位格式爲他們編譯軟件 - 沒有人喜歡從源代碼編譯未知軟件。顯然,爲那些更加不尋常的體系結構/操作系統提供源代碼選項(併爲它們提供一個模仿Qt Creator調用的命令的shell腳本!)。由於Qt運行時可以從軟件包管理器獲得,每發行版(大多數情況下都預先安裝,KDE需要它們),通過不要求它們從源代碼編譯,用戶的下載量會小得多(if任何),並不會要求他們從他們未知的網站下載軟件。當然,最好的辦法是嘗試將軟件作爲一個軟件包加入到主要發行版的存儲庫中,但這可能需要一些時間來組織。

爲32位和64位格式的Windows用戶編譯軟件。它通常不願意讓用戶下載他們可能不知道的運行時庫,並將它們放到他們的system32文件夾中......因此,大多數應用程序將它們所需的庫與他們的應用程序綁定在一起,因此大多數應用程序都將全部捆綁在一起。基於Qt的應用程序也不例外,因此將運行時放入可執行文件所在的文件夾中。另外創建一個合適的安裝程序更爲專業,Windows中有一些免費的安裝程序應用程序,網絡搜索會給你最流行的(我想我也看到了關於它的一個線程)。

正如你所看到的平臺不是太不相似,我要做的主要觀點是:不要強迫人們從源代碼編譯!地球上絕大多數人甚至不知道編譯是否爲,所以自己提供主要的架構/操作系統。

+0

謝謝你的回答! – Seub

+1

回答有用嗎?然後投票! – UmNyobe

+1

好吧,我剛剛做到了。但說實話,從實際的角度來看,我還沒有取得很大的進展...... – Seub