我必须在目标路径中创建一个文件夹并复制头文件。
所以我在.pro文件中使用了以下命令
DESTDIR_WIN_CELLTWEAK = $${CORE_API_PATH}/Include/spgc/
DESTDIR_WIN_CELLTWEAK ~= s,/,\\,g
QMAKE_POST_LINK += $$quote(mkdir $${DESTDIR_WIN_CELLTWEAK} $$escape_expand(\n\t))
for(FILE,EXPORTED_HEADERS_WIN){
QMAKE_POST_LINK +=$$quote(cmd /c copy /y $${FILE} $${DESTDIR_WIN_CELLTWEAK}&$$escape_expand(\n\t))
}
这是第一次创建文件夹。但在构建第二个时,我必须避免创建 spgc 文件夹(已经存在)。
如果 spgc 文件夹已存在,qt build 也会抛出错误。
我试过了
!exists($${DESTDIR_WIN_CELLTWEAK})
{
$$quote($${DESTDIR_WIN_CELLTWEAK})
QMAKE_POST_LINK += $$quote(mkdir $${DESTDIR_WIN_CELLTWEAK} $$escape_expand(\n\t))
}
但即使文件夹存在,!exists() 函数也会被调用并创建文件夹。
最佳答案
这就是我解决的方法
exists($$DESTDIR_WIN_CELLTWEAK) {
message("existing")
} else {
QMAKE_POST_LINK += $$quote(mkdir $${DESTDIR_WIN_CELLTWEAK} $$escape_expand(\n\t))
}
我添加了 if 为空,并在 else 中创建了目录
关于qt - 检查文件夹是否存在并在 .pro 文件中创建文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44151980/