Qt Creator で、新しいユニット テスト プロジェクトを作成すると、プロジェクトへのフル パスにスペースが含まれていると、正常にビルドされません。
qmakeによって作成されたmakefileまでバグを追跡しました。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
、プロジェクトは正常にビルドされます。
明らかに、バックスラッシュを毎回手動で削除したくありません。バックスラッシュを削除するカスタム ビルド ステップも避けたいと思います。.pro
qmakeには非常に多くのオプションがあるため、これを修正するファイルに入れることができる何かがあることを望んでいました.
のようなものを試しましたDEFINES -= QT_TESTCASE_BUILDDIR
。QT_TESTCASE_BUILDDIR
ただし、まだ定義されていない ため、機能しません。testlib
どうやら後で独自の定義を追加します。
私は使っている:
- ビジュアル スタジオ 2010 SP 1
- Qt 5.0.2
- Qt クリエーター 2.7.0
- ウィンドウズ7
バックスラッシュを取り除く最も簡単な方法は何ですか?
編集:これはOSXでも起こります。