Добавить расширение в переменную .pro - PullRequest
0 голосов
/ 29 апреля 2020

Я пытаюсь напечатать сообщение с помощью QMake, но у меня проблемы с расширениями:

lib_name = $$1
message("test1: $$MYPATH/$$lib_name/src/$$lib_name.pri");
message("test2: $$MYPATH/$$lib_name/src/$$lib_name");

По какой-то причине test1 не печатает правильный путь. Он просто печатает путь до src/. Но, test2 в порядке. Он печатает все до значения в $$1.

Любое решение?

1 Ответ

0 голосов
/ 29 апреля 2020

QMake поддерживает переменные (объекты) с членами, которые можно использовать с помощью оператора точки ., например, target.path для INSTALLS . Итак, в вашем случае $$lib_name.pri означает, что вы обращаетесь к члену pri из lib_name, который не существует, поэтому нет вывода.

Вам необходимо заключить переменные в фигурные скобки для QMake чтобы отличить guish их от окружающего текста, например $${lib_name}.pri.

Пример:

message("test1: $$MYPATH/$$lib_name/src/$${lib_name}.pri");
#                                       ~~~~~~~~~~~~

Дополнительные примеры объектов см. в Добавление пользовательской цели и Добавление компиляторов разделов QMake Advanced Usage page.

Вот еще один соответствующий поток SO: QMake - Как добавить и использовать переменную в. pro file

...