У чому різниця між *.pro
і *.pri
файлами QMAKE?
Що має входити у файл * .pro, а що - у файл .pri.
У чому різниця між *.pro
і *.pri
файлами QMAKE?
Що має входити у файл * .pro, а що - у файл .pri.
Відповіді:
.pro
Файл , що ви б запустити QMAKE на. .pri
Файл включений в .pro
файл. Крім цього, між ними немає великої різниці.
Приклад використання може бути, якщо у вас різні збірки, для яких потрібні різні параметри. Ви можете розмістити спільну інформацію в .pro, одночасно відклавши параметри до різних файлів .pri. Трохи більше інформації, хоча по загальним визнанням , не набагато більше, можна знайти тут .
Є одна основна відмінність між їх цільовим повторним використанням:
Зазвичай це називається Project File .
Зазвичай це називається Project Include File .
Як ви можете бачити в їх іменах, основна відмінність полягає в тому, що .pri
файли призначені для включення файлів. Це схоже на включення модулів у мову програмування для спільного використання функціональних можливостей.
Ви зможете записати загальні налаштування та код у ці .pri
файли та включити їх із кількох .pro
файлів у міру необхідності. Ось як ви могли б це використовувати на практиці:
FOO = BAR
...
include($$PWD/foo.pri)
...
...
include($$PWD/foo.pri)
...
Таким чином, спільність буде доступна як у, hello.pro
так і в world.pro
. У цьому сценарії це не має великої різниці, але коли спільна функціональність стане довшою, це заощадить вам як письмо, так і синхронізацію, виправлення помилок тощо.
Ви навіть можете включити .pri
файл до іншого .pri
файлу, якщо хочете. Ви також можете включити .pri
файли в різні підпроекти тощо. Це дуже приємно.
Однак синтаксис однаковий як для файлів , так .pro
і для них .pri
. Врешті-решт, ви запустите qmake на .pro
файлах, і це також те, що qmake генерує для вас, якщо у вас немає файлу проекту і ви маєте намір використовувати qmake -project
.
Детальніше про функцію включення ви можете прочитати тут :
включити (ім'я файлу)
Включає вміст файлу, зазначеного іменем файлу, до поточного проекту, де він включений Ця функція успішна, якщо включено ім’я файлу; інакше це не вдається. Включений файл обробляється негайно.
Ви можете перевірити, чи був файл включений, використовуючи цю функцію як умову для області.
Щоб бути повною, існують також .prf
Project Feature Files і .prl
Project Linker Files , але як кінцевому користувачеві наразі вам не потрібно з ними мати справу.
Формат .pri
файлів точно такий же, як формат .pro
файлів. Головна відмінність полягає у намірі; a .pro - це те, що більшість людей очікує від безпосереднього запуску qmake, тоді як .pri повинен бути включений .pro. Коли ви доручаєте qmake включити інший файл, він просто обробляє команди у цьому файлі так, ніби він знаходиться у поточному файлі.
Для довідки: * .pro проти * .pri