2012-01-27 104 views
5

一般安裝一個基於Linux的操作系統上的包你用如何爲Qt應用程序創建「安裝」包?

./configure 
make 
make install 

這是如何工作的?我該如何創建一個可以這種方式安裝的軟件包?

我的應用程序使用Qt框架,我想我的目標類似「MyPackage.tar.gz」

回答

2

configure通常是GNU的編譯系統(自動工具),這是不是在使用中的一部分典型的Qt項目。 qmake代替構建文件生成,它在內部處理大多數configure任務爲非qt項目所做的工作。

典型的建立Qt應用程序的安裝過程是

qmake 
make 
make install 

你可以創建你所需要的命令名稱是相同的調用QMAKE一個簡單的./configure腳本。如果需要,您也可以使用帶Qt的自動工具,請參閱Qt Creator Instructions For Autotools

3

您可以從您的項目中創建一個debian軟件包。據我所知,你想創建一個用於分發的包,所以我建議從你的項目中創建一個debian包。 Here是Debian包裝系統的簡介。在文章中他們在某個時候描述瞭如何創建一個「規則」文件,這是構建過程的核心。這裏是它的一個樣品,我通常用我的Qt/KDE項目:

#!/usr/bin/make -f 
#export DH_VERBOSE=1 
# This is the debhelper compatability version to use. 

#export DH_COMPAT=3 
DESTDIR=$(CURDIR)/debian/project 
TR_DIR=$(CURDIR)/debian/project/usr/share/qt4/translations 

configure: 
     qmake project.pro 

clean: 
     dh_testdir 
     dh_testroot 
     dh_clean 

build: configure 
     dh_testdir 
     lrelease translations/project_en.ts 
     $(MAKE) 

install: build 
     mkdir -p $(TR_DIR) 
     cp translations/project_en.qm $(TR_DIR) 
     $(MAKE) INSTALL_ROOT=$(CURDIR)/debian/project install 
     dh_installdirs 

binary-arch: build install 
     dh_testdir 
     dh_testroot 
     dh_installmenu 
     dh_link 
     dh_strip 
     dh_compress 
     dh_fixperms 
     dh_installdeb 
     dh_shlibdeps 
     dh_gencontrol 
     dh_md5sums 
     dh_builddeb 

這通常是sufficent的小項目。

0

Qt通常與CMake一起使用,我強烈推薦。一個值得注意的地方是它喜歡外部構建。

你的配置腳本可能是

#!/bin/bash 
(mkdir build; cd build; ccmake ..) 

和makefile文件可能是

#!/bin/bash 
(cd build; make) 
相關問題