3

Windows用のCMake 2.8.10.2は、Visual Studio 2012(Windows 7の下)で私のためにプロジェクトを構成することを拒否しました

CMake は、Microsoft コンパイラでサポートされなくなったいくつかの設定を追加しているようです。 リンク: 致命的なエラー LNK1117: オプション 'manifest:embed' の構文エラー

非常に基本的なcmakeファイルで試してみたところ、同じ結果が得られました

cmake_minimum_required (VERSION 2.6)
add_executable(test test.cpp)

回避策はありますか?

出力ウィンドウには次のように表示されます。

The C compiler identification is MSVC 17.0.51106.1
The CXX compiler identification is MSVC 17.0.51106.1
Check for working C compiler using: Visual Studio 11
Check for working C compiler using: Visual Studio 11 -- broken
CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:61 (message):
  The C compiler "C:/Program Files (x86)/Microsoft Visual Studio
  11.0/VC/bin/cl.exe" is not able to compile a simple test program.

  It fails with the following output:

   Change Dir: C:/tmp/testCmake/build/CMakeFiles/CMakeTmp



  Run Build Command:C:\PROGRA~2\MICROS~2.0\Common7\IDE\devenv.com
  CMAKE_TRY_COMPILE.sln /build Debug /project cmTryCompileExec3122367237



  Microsoft (R) Microsoft Visual Studio 2012 Version 11.0.51106.1.

  Copyright (C) Microsoft Corp.  All rights reserved.

  1>------ Build started: Project: cmTryCompileExec3122367237, Configuration:
  Debug Win32 ------

  1> Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01
  for 80x86

  1> Copyright (C) Microsoft Corporation.  All rights reserved.

  1> 

  1> cl /c /Zi /W3 /WX- /Od /Ob0 /Oy- /D WIN32 /D _WINDOWS /D _DEBUG /D
  "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise
  /Zc:wchar_t /Zc:forScope /Fo"cmTryCompileExec3122367237.dir\Debug\\"
  /Fd"C:/tmp/testCmake/build/CMakeFiles/CMakeTmp/Debug/cmTryCompileExec3122367237.pdb"
  /Gd /TC /analyze- /errorReport:prompt /Zm1000 testCCompiler.c

  1> 

  1> testCCompiler.c

  1>LINK : fatal error LNK1117: syntax error in option 'manifest:embed'

  ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped
  ==========





  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):



Configuring incomplete, errors occurred!
4

3 に答える 3

0

エラーも発生していました:

リンク: 致命的なエラー LNK1117: オプション 'manifest:embed' の構文エラー

Windows 7、Visual Studio 2013 Community で発生しました。

多くの解決策を試しましたが、唯一有効だったのは、コンピューターから Visial Studio 2010 を完全に削除することでした。他に何も機能しませんでした。VS2013 内で変数 $VCInstallDir がまだ 2010 のインストールを指しているという問題を突き止めました。その結果、間違ったLibarayPath設定と間違ったツールチェーンexecが使用されました(適切な「PlatformToolset」設定がありますが)。

総括する:

  1. プロジェクトに適切な「PlatformToolset」設定が必要であり、依存するすべてのライブラリプロジェクトに同一の設定が必要です
  2. $LibraryPath が正しいかどうかを確認して、正しいライブラリ ディレクトリが使用されていることを確認する必要があります。プロジェクト設定で直接オーバーライドしない限り、Visual Studio の内部オートメーションを介して $VCInstallDir に依存するため、その変数も確認してください。
  3. 問題 2 を解決するには、おそらく Visual Studio 2010 を削除する必要があります。
于 2016-04-21T11:26:26.653 に答える