2009-08-17 11 views
6

Estoy tratando de compilar una aplicación qt con qt4 sdk + herramientas que hemos comprobado en nuestro servidor de control de código fuente (p4). Específicamente, he convertido el archivo del proyecto qt4 (.pro) en un archivo de proyecto de estudio visual que es sintácticamente correcto y aceptado por VS.anulando las configuraciones de tiempo de compilación qt4

El problema es la ubicación del recurso y los compiladores MOC. Qmake está configurando el archivo de proyecto de estudio visual para que apunte a la ubicación en la máquina donde originalmente se construyó qt4.

Cuando reviso la fuente, bibliotecas y binarios, están en una ubicación diferente. Hay una gran cantidad de variables de entorno que afectan el comportamiento de qt4 + qmake, pero no puedo encontrar una que me permita anular la ubicación del recurso y los compiladores de moc. ¿Alguien puede ayudar?

Respuesta

0

¡lo obtuve! Qmake -query "QT_INSTALL_PREFIX" le dirá dónde qt cree que se ha instalado. Esto se puede cambiar con: "qmake -set valor de la variable"

Tienes esta información a partir de: http://doc.trolltech.com/4.5/qmake-environment-reference.html

Debería haber revisado primero hay realmente :-)

+2

esto no es del todo correcto, el qmake "set" y los comandos de "consulta" sí permiten el ajuste de los datos persistentes, pero no permiten que las variables de la instalación qt a ser anulados, argh !, por lo que establecer QT_INSTALL_PREFIX en un valor arbitrario no funcionará :-( –

2

Echa un vistazo a la información QMAKESPEC, y tienen una mira dentro de algunas de las especificaciones disponibles. En este caso, para la especificación marca common/linux.conf, que incluye las siguientes líneas:

QMAKE_MOC    = $$[QT_INSTALL_BINS]/moc 
QMAKE_UIC    = $$[QT_INSTALL_BINS]/uic 

De estos, yo supongo que podría cambiar la definición de la variable QT_INSTALL_BINS para que apunte a su nueva ubicación. De forma alternativa, puede anular las variables QMAKE_MOC o QMAKE_UIC para que apunten a los ejecutables que desee.

0

correcta, la ubicación equivilant en una máquina Windows está en el registro: [HKEY_CURRENT_USER] \ Software \ Trolltech \ Versiones \ 4,5 \ InstallDir

+0

Tradicionalmente, este tipo de información se configuraría estableciendo la variable de entorno QTDIR, pero este comportamiento se cambió en Qt4 –

0

crear un archivo qt.conf con la ruta correcta en el directorio bin Qt , y asegúrese de pasar -nocache a qhacer.

2

Estaba investigando esto y encontré una manera que funciona (en qt 4.7.2) personalizando qt con un archivo qt.conf.

En mi caso, he añadido un qt4-4.7.2/bin/qt.conf (creo que debe estar en el mismo lugar que el ejecutable de qmake)

Con el siguiente contenido:

[Paths] 
Prefix = c:/my_path/to/qt4-4.7.2 

y qmake -query comenzó a devolver los caminos adecuados!

Ver: http://doc.qt.nokia.com/stable/qt-conf.html para más detalles

Cuestiones relacionadas