问题
For my Qt project, I use a .pro file that includes a separate .pri file for the various header, source, form and resource files. However, every time I add a new file I need to manually add it to the .pri file. This is tedious and error-prone. Is there a way to "magically" add all files from a directory, either directly in the .pri file or by telling qmake to run a separate script beforehand?
回答1:
Running qmake -project
from the directory will create a project file that includes all the .cpp and .h files in that directory. You could add a pre-compile step that calls qmake -project
, then pass the generated file to a script that removes the first few lines. Here's a quick one-liner that could do the job :
qmake -project -o MyFiles.pro && sed '1,/^# Input/d' MyFiles.pro > MyFiles.pri && rm MyFiles.pro
回答2:
You can use:
SOURCES += *.cpp
HEADERS += *.h
in your pro file. Of course you still have to remember to re-run qmake after creating new files.
来源:https://stackoverflow.com/questions/3806833/qmake-automatically-compiling-all-files-in-a-directory