2012-01-27 26 views
5

general para instalar un paquete en un sistema operativo basado en Linux que utilice¿Cómo creo un paquete 'instalar' para una aplicación Qt?

./configure 
make 
make install 

¿Cómo funciona esto? ¿Y cómo puedo crear un paquete que se pueda instalar de esta manera?

Mi aplicación utiliza el marco de Qt y creo que estoy apuntando para algo así como "MyPackage.tar.gz"

Respuesta

2

configure es generalmente parte del sistema GNU (autotools), que no está en uso en una construcción típico proyecto de Qt. qmake se usa en su lugar para la generación de archivos de compilación y maneja internamente la mayoría de las tareas configure para proyectos que no son de qt.

La construcción típica proceso de instalación para una aplicación Qt es

qmake 
make 
make install 

Se puede crear un script ./configure simple que llama qmake si necesita los nombres de los comandos que ser idénticos. También puede usar autotools con Qt si lo necesita, consulte p. Ej. Qt Creator Instructions For Autotools

3

Puede crear un paquete Debian desde sus proyectos. Como entendí, desea crear un paquete destinado a la distribución, por lo que le sugiero que cree un paquete Debian de su proyecto. Here es una introducción para el sistema de empaquetado de Debian. En el artículo, en algún momento describen cómo crear un archivo de "reglas" que se encuentra en el núcleo del proceso de compilación. Este es un ejemplo de ello que normalmente utilizo para mis proyectos 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 

Esto normalmente se sufficent para proyectos pequeños.

0

Qt se usa a menudo con CMake, que recomiendo encarecidamente. Un punto notable es que le gusta construir fuera de la fuente.

Su script de configuración podría ser

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

y el makefile podría ser

#!/bin/bash 
(cd build; make) 
Cuestiones relacionadas