8.1.3. qmake

8.1.3.1. Background

Your project is built using qmake.

8.1.3.2. What can be configured?

You can setup

  • analysis of your project by hooking into the generated build files (e.g., Makefiles)

  • an Axivion toolchain to hook into the generation process for the build files

8.1.3.3. What needs to be done?

The usual setting of variables (CC=cafeCC CXX=cafeCC qmake ...) does not work that way, but instead you have to do qmake -late QMAKE_CC=cafeCC QMAKE_CXX=cafeCC QMAKE_LINK=cafeCC.

Using the QMakeIntegration from within the configuration GUI does the above automatically.

After having created the Makefiles with qmake, you have to invoke make as usual and you can use MakeIntegration out of the box.

8.1.3.4. Usage of Resources and Big Resources

By default, when only building Axivion IR, resources are skipped from the build. This is done by adding RESOURCES="" to the qmake command.

If however you wanted the resource to be part of the Axivion IR build, you need to remove the RESOURCES="" and add RCC_CXX=g++ instead (where g++ is the native C++ compiler used in your project).

When you need to build native objects and Axivion IR at the same time, then you need to change the qmake invocation to be qmake -late QMAKE_CC=irCC QMAKE_CXX=irCXX QMAKE_LINK=irCXX instead.

In case resources are in the project, you will have to configure an ignore pattern for missing IR input files as linker.advanced.ignore_missing_files to a pattern like */qrc_*.o.ir or */qrc_*.obj.ir.