qmake y QT_INSTALL_PREFIX. ¿Cómo puedo seleccionar una nueva ubicación para la biblioteca Qt?

StackOverflow https://stackoverflow.com/questions/913642

  •  06-09-2019
  •  | 
  •  

Pregunta

Soy nuevo en QMake y estoy tratando de construir una aplicación existente. Qt se instaló originalmente en /usr/local/lib/Qt-4.3.5 y 'QMake -query QT_INSTALL_PREFIX' regresa ese camino.

He movido la biblioteca Qt a otro lugar y los Makefiles generados están salpicadas con la ruta / usr / local originales.

¿Cómo puedo forzar qmake a utilizar la nueva ubicación que he seleccionado sin tener que recompilar Qt?

¿Fue útil?

Solución

Se trata de un 'incorporado' compilado en qmake de qconfig.cpp. La mejor manera es volver a configurar Qt con otro -prefix y reconstruir por desgracia. Para la mayoría de otras variables, puede utilizar un archivo .qmake.cache. Ver

http://doc.qt.digia.com/qt /qmake-environment-reference.html

Para obtener más información

Otros consejos

Yo estaba buscando en esto y encontré una manera que funcione (en 4.7.2 qt) mediante la personalización de qt con un archivo qt.conf.

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

Con el siguiente contenido:

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

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

Ver: http://doc.qt.io/qt-4.8/qt-conf.html para más detalles


[Actualización:] Por lo menos desde Qt 5.3.1 (probado con versiones estáticas de 5.3.1 y 5.5 en Windows 8) se puede hacer simplemente

[Paths]
Prefix = ..

e implementar la instalación de Qt en cualquier lugar.

Como se ha señalado por Henrik Hartz, QT_INSTALL_PREFIX está incorporado y no se puede cambiar. Sin embargo, si lo que desea es evitar tener que reconstruir Qt temporalmente, a continuación, puede probar lo siguiente:

qmake de consulta por su prefijo instalar, volver a crear la estructura de directorios informado, y utilizar un enlace simbólico o HardLink a donde la versión de Qt es reubicado. P.ej. en Linux

  • Obtener la ruta de lo informado por /new/Qt/location/bin/qmake -query QT_INSTALL_PREFIX. Decir esto informa /Parent/Dirs/Prefix.
  • Crea cualquier directorio padre de la ruta, por ejemplo, mkdir -p /Parent/Dirs/
  • enlace simbólico a nueva ubicación, por ejemplo, ln -s /new/Qt/location /Parent/Dirs/Prefix

Lo anterior también puede ser útil si usted tiene un montón de desarrolladores que necesitan trabajar con la misma versión de pre-compilados de Qt, en esta versión de Qt no necesariamente se copia en el mismo camino en las computadoras todos los desarrolladores, y donde sólo es necesario agrupar las librerías Qt compartido con usted aplicación para los usuarios finales (es decir, no serán envío cabeceras o construir herramientas).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top