首页 > 解决方案 > 如何指示 Qmake 将文件夹名称添加到列出的所有标题和来源?

问题描述

我有一个Qt app pro 文件,可以说MyQtApp.pro。我想在不同平台上编译的不同文件夹中有各种特定于平台的文件。

OSXFiles是让我们说 OSX 的源所在的文件夹

macx {
    MY_FOLDER = OSXFiles

    SOURCES += $$MY_FOLDER/File_1.hpp $$MY_FOLDER/File_3.hpp $$MY_FOLDER/File_3.hpp
    SOURCES += $$MY_FOLDER/File_1.cpp $$MY_FOLDER/File_3.cpp $$MY_FOLDER/File_3.cpp
}

上述技术有效,但有没有办法摆脱$$MY_FOLDER为每个文件添加前缀的麻烦?例如,没有像这样的一些很酷的技巧可以理解每次默认查看$$MY_FOLDER吗?

SOURCES += $$MY_FOLDER/ += File_1.hpp File_3.hpp 

标签: qtqmake

解决方案


您可以使用for功能

MY_FOLDER = OSXFiles
for(a, SOURCES){
    OSXFILES += $$MY_FOLDER/$$a
}

加入

OSXFILES = $$join(SOURCES, " $$MY_FOLDER/", $$MY_FOLDER/)

推荐阅读