Qt pro文件自动拷贝文件到指定目录

defineReplace(win32Path) {#定义替换
    win32:1 ~= s|/|\\\\|g#将会替换任何与指定的值的正则表达式匹配的任何值
    contains(1, ^\\.*):pfx = \\#如果value存在于一个被叫做variablename的变量的值的列表中,那么成功,否则失败。
    else:pfx =
    segs = $$split(1, \\)#字符串分割
    out =
    for(seg, segs) {
        equals(seg, ..):out = $$member(out, 0) #文档中member函数是只有两个参数的,返回函数的值列表中指定位置的值
        else:!equals(seg, .):out += $$seg
    }
    return($$join(out, \\, $$pfx))
}

Qt 的路径分隔符默认是”\“,如果在里面使用相对路径拷贝文件,脚本命令会因为分隔符提示命令格式不正确,所以我们需要通过上面的函数来替换成win32环境的路径,然后通过以下命令

win32_PWD=$$win32Path($$PWD)
QMAKE_POST_LINK+= copy $$win32_PWD\..\a.txt D:\

就可以实现拷贝相对路径的文件了

猜你喜欢

转载自blog.csdn.net/weixin_28927079/article/details/102619925
今日推荐