3

Qt 用の VS アドインを使用してビジュアル スタジオで単純な Qt アプリをコンパイルしようとすると、次のエラーが表示されます。

1>------ Rebuild All started: Project: XXXXXXXXXXXXX, Configuration: Release Win32 ------
1>Build started 5/05/2012 6:57:33 PM.
1>_PrepareForClean:
1>  Deleting file "release\XXXXXXXXXXXXX.lastbuildstate".
1>InitializeBuildStatus:
1>  Touching "release\XXXXXXXXXXXXX.unsuccessfulbuild".
1>CustomBuild:
1>  MOC XXXXXXXXXXXXXMainWidget.h
1>  moc: Too many input files specified
1>  Usage: moc [options] <header-file>
1>    -o<file>           write output to file rather than stdout
1>    -I<dir>            add dir to the include path for header files
1>    -E                 preprocess only; do not generate meta object code
1>    -D<macro>[=<def>]  define macro, with optional definition
1>    -U<macro>          undefine macro
1>    -i                 do not generate an #include statement
1>    -p<path>           path prefix for included file
1>    -f[<file>]         force #include, optional file name
1>    -nn                do not display notes
1>    -nw                do not display warnings
1>    @<file>            read additional options from file
1>    -v                 display version of moc
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5):                       error MSB6006: "cmd.exe" exited with code 1.
 1>
 1>Build FAILED.
 1>
 1>Time Elapsed 00:00:00.05
 ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

どうしたんだ?グーグルで調べたところ、問題は 1.1.7 のバグのようでした。解決策は、VS プロジェクトのインクルードを再調整することでした。そうは言っても、私は 1.1.10 を使い続けることを好みます - まだ 1 か月しか経っていないので、問題は別の場所にあると確信しています。

4

1 に答える 1

7

これは、ファイル名またはパスにスペースが含まれている場合に発生する可能性があります。

何らかの形式の引用による回避策があるかもしれませんが、これを処理する最も健全な (IMO) 方法は、プロジェクト パスとファイル名にスペースを使用しないようにすることです。

于 2012-05-05T10:55:05.377 に答える