В чем разница между *.proи *.priконфигурационными файлами QMAKE?
Что должно быть в файле * .pro, а что - в файле * .pri?
В чем разница между *.proи *.priконфигурационными файлами QMAKE?
Что должно быть в файле * .pro, а что - в файле * .pri?
Ответы:
.proФайл , что вы бы запустить QMAKE на. .priФайл включен в .proфайл. Кроме этого, между ними нет большой разницы.
Пример использования может быть, если у вас разные сборки, для которых требуются разные параметры. Вы можете поместить совместно используемую информацию в .pro, а параметры откладывать для различных файлов .pri. Немного больше информации, хотя, по общему признанию, не намного, можно найти здесь .
Есть одно главное различие между их целевым повторным использованием:
Обычно это называется файлом проекта .
Обычно это называется включенным файлом проекта .
Как вы можете видеть по их названиям, основное различие состоит в том, что .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.
Вы можете прочитать больше о функции include здесь :
включить (имя файла)
Включает содержимое файла, указанного в filename, в текущий проект в том месте, где оно было включено. Эта функция завершается успешно, если указано имя файла; в противном случае это не удается. Включенный файл обрабатывается немедленно.
Вы можете проверить, был ли включен файл, используя эту функцию в качестве условия для области.
Просто чтобы быть полным, есть также .prf проект Feature Файлы и .prl проекта Linker Файлы , но как конечный пользователь, вам не нужно иметь дело с тем, что на данный момент.
Формат .priфайлов точно такой же, как формат .proфайлов. Основное различие заключается в намерении; .pro - это то, на чем большинство людей ожидает запустить qmake напрямую, в то время как .pri должен быть включен в .pro. Когда вы указываете qmake включить другой файл, он просто обрабатывает команды в этом файле, как если бы он был в текущем файле.
Для справки: * .pro vs * .pri