Qt那些事0.0.21
阿新 • • 發佈:2019-07-20
這次還是關於PRO檔案中QMAKE_POST_LINK的故事。
平時都是使用VS2015作為編譯器,恰巧想用MinGW編一版程式,結果偏偏出現了錯誤。話說測試的這個專案可是在Linux下(fodera 20)可以正確編譯通過。
心有不甘的細細探索,錯誤是 *** missing separator. Stop
,能看出問題發生在makefile中,但是不熟,沒遇到過,於是百度。被人評價為Make的低階錯誤,是因為makefile中的語句沒有使用TAB
作為起始。
發生錯誤的語句正好是自己寫的QMAKE_POST_LINK
,通常的寫法為:
QMAKE_POST_LINK += $$escape_expand("\\n") copy /y $$replace(PWD,"/","\\")\\manual.pdf $$replace(DESTDIR,"/","\\")
其中$$escape_expand
是為了在makefile中增加換行符,現如今被要求增加 TAB
,因此改成:
QMAKE_POST_LINK += $$escape_expand("\\n\\t") copy /y $$replace(PWD,"/","\\")\\manual.pdf $$replace(DESTDIR,"/","\\")
果然