QMake - How to add and use a variable into the .pro file

QtQmake

Qt Problem Overview


I have a qmake file generated by Qt creator. I am modifying it but I do not manage to understand how to create a variable.

For example, I want to declare the library MYPATH as I did here:

MYPATH = /lib/aaa/bbb
unix:!macx:!symbian: LIBS += -L$(MYPATH)

When I run qmake I find in the generated makefile

LIBS = ....... -L$(MYPATH) .....

But the MYPATH variable is not declared anywhere.

Does anyone know how to declare such a variable properly?

Qt Solutions


Solution 1 - Qt

QMake uses its own syntax for variable references.

  • VAR = foobar => Assign value to variable when qmake is run
  • $$VAR => QMake variable's value at the time qmake is run
  • $${VAR} => QMake variable's value at the time qmake is run (identical but enclosed to separate from surrounding text)
  • $(VAR) => Contents of an Environment variable at the time Makefile (not qmake) is run
  • $$(VAR) =>Contents of an Environment variable at the time qmake (not Makefile) is run

Try it like this

MYPATH = /lib/aaa/bbb
unix:!macx:!symbian: LIBS += -L$${MYPATH}

Solution 2 - Qt

Other useful variable type: $$[...] This means "configuration option that were set when Qt was built"

Example:

message($$[QT_INSTALL_BINS])

This gives:

C:\Qt\Qt5.0.2\5.0.2\msvc2010_opengl\bin

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionCristasView Question on Stackoverflow
Solution 1 - QtjwernernyView Answer on Stackoverflow
Solution 2 - QtbocsView Answer on Stackoverflow