2015-09-17 23 views
2

我想複製一些qml到我的生成目錄。
.pro,我補充一下:
在明確,qmake copy_dir總是錯誤

copydata.commands = $(COPY_DIR) \"$$PWD/plugins\" \"$$DESTDIR/plugins\" 

但是,當我生成項目,該copydata是錯誤。 錯誤消息是:

XCOPY/S/Q/Y/I 「E:/ myproject的/ SRC /插件」 「E:/ myproject的/ bin中/調試/插件」 的參數無效的數

但是,我將命令複製到cmd,沒關係。

有誰知道錯在哪裏?

+1

Windows可能會被那些正斜槓會感到困惑。在所有情況下嘗試反斜槓。 – macetw

+0

另外,您引用示例錯誤的方式,您似乎不需要引號。嘗試沒有這些引號。 – macetw

+0

是的,你是對的。我手動將正斜槓替換爲反斜槓,它可以工作, 但是,在$$ PWD中,總是正斜槓,我該如何更改它們? 而且,報價是必要的 – behtgod

回答

3

Windows可能會被這些正斜槓混淆。在所有情況下嘗試反斜槓。

4

我明白了!
謝謝你,macetw,你指路。

正確的代碼應該是:

copydata.commands = $(COPY_DIR) $$shell_path($$PWD/plugins) $$shell_path($$DESTDIR/plugins) 
1

解決方案,能在Linux和Windows上運行使用Qt 4.8和更高版本:

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 

相關鏈接: