在Qt Creator中,當我創建一個新的單元測試項目時,如果項目的完整路徑包含空格,它將無法成功構建。Qt創建器單元測試項目
我跟蹤到了由qmake生成的makefile的bug。 Makefile包括靠近頂部的一行:
DEFINES = -DUNICODE -DWIN32 -DSRCDIR=\"C:/Users/Smith/Qt Projects/Unit_Tests/\" -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_TESTLIB_LIB -DQT_CORE_LIB -DQT_TESTCASE_BUILDDIR=\"C:/Users/Smith/Qt Projects/Debug_Unit_Tests\"
中值SRCDIR
和QT_TESTCASE_BUILDDIR
引號用反斜槓轉義。如果我從Makefile.Debug
中刪除反斜槓,那麼項目將成功構建。
顯然,我不想每次都手動刪除反斜槓。我也想避免一個自定義構建步驟,刪除反斜槓。由於qmake有這麼多選項,我希望有一些東西我可以放在.pro
文件中解決。
我試過類似DEFINES -= QT_TESTCASE_BUILDDIR
。這不起作用,因爲QT_TESTCASE_BUILDDIR
尚未定義。 testlib
顯然後來增加了自己的定義。
我使用:
- 的Visual Studio 2010 SP 1
- 的Qt 5.0.2
- Qt Creator的2.7.0
- Windows 7的
什麼是最簡單的方法擺脫反斜槓?
編輯:這也發生在OSX。
這可能很明顯,但是一旦您更改了.prf文件,您將不得不再次爲QtCreator運行qmake以查看更新後的QT_TESTCASE_BUILDDIR。 – BKewl