¿Cuál es la diferencia entre los archivos de configuración *.pro
y *.pri
para qmake?
¿Qué debe ir en un archivo * .pro y qué debe ir en un archivo * .pri?
Un .pro
archivo es en lo que ejecutaría QMake. Un .pri
archivo está incluido en un .pro
archivo. Aparte de eso, no hay mucha diferencia entre los dos.
El uso de ejemplo podría ser si tiene diferentes compilaciones que necesitan diferentes opciones. Puede poner información compartida en el .pro, mientras pospone las opciones a varios archivos .pri. Puede encontrar un poco más de información, aunque ciertamente no mucha más, aquí .
Hay una diferencia principal entre su reutilización objetivo:
Esto generalmente se llama Archivo de proyecto .
Esto generalmente se denomina Archivo de inclusión del proyecto .
Como puede ver en sus nombres, la principal diferencia es que los .pri
archivos están destinados a incluir archivos. Eso es similar a incluir módulos en el lenguaje de programación para compartir la funcionalidad, esencialmente.
Podrá escribir la configuración común y el código en esos .pri
archivos e incluirlos desde varios .pro
archivos cuando sea necesario. Así es como lo usaría en la práctica:
FOO = BAR
...
include($$PWD/foo.pri)
...
...
include($$PWD/foo.pri)
...
De esta manera, la comunidad estaría disponible tanto en hello.pro
como en world.pro
. No hace mucha diferencia en este escenario, pero cuando la funcionalidad compartida se alarga, le ahorrará algo de escritura, sincronización, corrección de errores, etc.
Incluso puede incluir un .pri
archivo dentro de otro .pri
archivo si lo desea. También podrías incluir .pri
archivos en diferentes subproyectos, etc. Es muy agradable.
Sin embargo, la sintaxis es la misma para los archivos .pro
y .pri
. Al final, ejecutaría qmake en los .pro
archivos, y eso también es lo que genera qmake para usted si no tiene un archivo de proyecto existente y tiene la intención de usarlo qmake -project
.
Puede leer más sobre la función de inclusión aquí :
incluir (nombre de archivo)
Incluye el contenido del archivo especificado por nombre de archivo en el proyecto actual en el punto donde se incluye. Esta función tiene éxito si se incluye el nombre del archivo; de lo contrario, falla. El archivo incluido se procesa inmediatamente.
Puede comprobar si el archivo se incluyó utilizando esta función como condición para un alcance.
Sólo para estar completo, hay también .prf
Proyecto Característica archivos y .prl
Proyecto vinculador de archivos , sino como un usuario final, que no tienen que lidiar con eso por ahora.
El formato de los .pri
archivos es exactamente el mismo que el formato de los .pro
archivos. La principal diferencia es de intención; un .pro es lo que la mayoría de la gente espera que ejecute qmake directamente, mientras que un .pri debe ser incluido por un .pro. Cuando le indica a qmake que incluya otro archivo, simplemente procesa los comandos en ese archivo como si estuviera en el archivo actual.
Para referencia: * .pro vs * .pri