Question

I have to run the following commands from Qt command prompt: qmake -project then make and this gives me the debug folder with the Moc file.
This is strangely the only way my PC will generate the moc_.cpp file.

So how can I automate the task of these commands so I don't have to use these commands again?

Was it helpful?

Solution

You should not run qmake -project multiple times. The -project option is meant to provide you a template project file for you to edit. An equivalent of what you are doing in an IDE would be creating a "New Project" every time you want to build. After you have the initial project, you should edit it manually, add files when you have new files, etc. If some header file changes, the generated Makefile will notice it and call moc on it to update the moc_*.cpp file automatically. So:

  1. Run qmake -project when you start working on a project.
  2. Run qmake when you want to generate Makefiles.
  3. Run make when you want to build the project.

OTHER TIPS

I guess you have two choices.

  1. call qmake from a parent make process and do a multilevel build. ("Recursive make".)

  2. directly run the meta-object compiler from rules in your makefile

If the second, this page on using the meta-object compiler may help.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top