我想将一些qml复制到我的构建目录中
在.pro
中,我添加:
copydata.commands = $(COPY_DIR) \"$$PWD/plugins\" \"$$DESTDIR/plugins\"
但是当我构建项目时,copydata
是错误的。
错误消息是:
xcopy / s / q / y / i “E:/ myproject的/ src目录/插件” “E:/ myproject的/斌/调试/插件” 参数数量无效
但是,我将命令复制到cmd,没关系。
有谁知道错误是什么?
答案 0 :(得分:4)
我明白了!
谢谢,macetw,你指明了方向。
正确的代码应该是:
copydata.commands = $(COPY_DIR) $$shell_path($$PWD/plugins) $$shell_path($$DESTDIR/plugins)
答案 1 :(得分:3)
Windows可能会被那些正斜杠混淆。在所有情况下都要尝试反斜杠。
答案 2 :(得分:1)
适用于Qt 4.8及更高版本的Linux和Windows的解决方案:
win32 {
COPY_FROM_PATH=$$shell_path($$PWD/plugins)
COPY_TO_PATH=$$shell_path($$DESTDIR/plugins)
}
else {
COPY_FROM_PATH=$$PWD/plugins
COPY_TO_PATH=$$DESTDIR/plugins
}
copydata.commands = $(COPY_DIR) $$COPY_FROM_PATH $$COPY_TO_PATH
first.depends = $(first) copydata
export(first.depends)
export(copydata.commands)
QMAKE_EXTRA_TARGETS += first copydata
有用的链接: