2015-11-20 15 views
5

私はこのチュートリアルから簡単なアプリケーションをコンパイルしています: https://www.johnlamp.net/cmake-tutorial-1-getting-started.html (main.cc、ToDo.ccおよびToDo.hファイルのみ)。私は、Visual Studio 2015がインストールされていると私はそれがジェネレータの使用時に、VSのプロジェクトが正常に生成されCMake "NMake Makefiles"ジェネレータがコンパイルに失敗する

PS C:\data\OtherTech\cmaketest\build> cmake "Visual Studio 14 2015" .. 

しかし、私は "NMAKEメイクファイル" または "UNIXのMakefile" の発電機を使用する場合:

PS C:\data\OtherTech\cmaketest\build> cmake "NMake Makefiles" .. 
を私はCMakeFiles \ CMを見れば、また

> PS C:\data\OtherTech\cmaketest\build> cmake -G "NMake Makefiles" .. 
-- The C compiler identification is MSVC 19.0.23026.0 
-- The CXX compiler identification is MSVC 19.0.23026.0 
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/cl.exe 
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/cl.exe -- broken 
CMake Error at C:/Users/user1/Desktop/Apps/cmake-3.4.0-win32-x86/share/cmake-3.4/Modules/CMakeTestCCompiler.cmake:61 (
message): 
    The C compiler "C:/Program Files (x86)/Microsoft Visual Studio 
    14.0/VC/bin/cl.exe" is not able to compile a simple test program. 

    It fails with the following output: 

    Change Dir: C:/Data/OtherTech/cmaketest/build/CMakeFiles/CMakeTmp 



    Run Build Command:"nmake" "/NOLOGO" "cmTC_6fd86\fast" 

     "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\nmake.exe" -f 
    CMakeFiles\cmTC_6fd86.dir\build.make /nologo -L 
    CMakeFiles\cmTC_6fd86.dir\build 

    Building C object CMakeFiles/cmTC_6fd86.dir/testCCompiler.c.obj 

     C:\PROGRA~2\MICROS~3.0\VC\bin\cl.exe 
    @C:\Users\user1\AppData\Local\Temp\nm5A8B.tmp 

    testCCompiler.c 

    Linking C executable cmTC_6fd86.exe 

     C:\Users\user1\Desktop\Apps\cmake-3.4.0-win32-x86\bin\cmake.exe -E 
    vs_link_exe --intdir=CMakeFiles\cmTC_6fd86.dir --manifests -- 
    C:\PROGRA~2\MICROS~3.0\VC\bin\link.exe /nologo 
    @CMakeFiles\cmTC_6fd86.dir\objects1.rsp 
    @C:\Users\user1\AppData\Local\Temp\nm5B29.tmp 

    The parameter is incorrectRC Pass 1 failed to run. 

    NMAKE : fatal error U1077: 
    'C:\Users\user1\Desktop\Apps\cmake-3.4.0-win32-x86\bin\cmake.exe' : 
    return code '0xffffffff' 

    Stop. 

    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 
    14.0\VC\bin\nmake.exe"' : return code '0x2' 

    Stop. 





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


-- Configuring incomplete, errors occurred! 
See also "C:/Data/OtherTech/cmaketest/build/CMakeFiles/CMakeOutput.log". 
See also "C:/Data/OtherTech/cmaketest/build/CMakeFiles/CMakeError.log". 

は、私は次のエラーを取得していますここ

LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib' 

フル出力である:

akeError.logそれはエラーが含まれてい

Compiling the C compiler identification source file "CMakeCCompilerId.c" failed. 
Compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/cl.exe 
Build flags: 
Id flags: 

The output was: 
2 
Microsoft (R) C/C++ Optimizing Compiler Version 19.00.23026 for x86 
Copyright (C) Microsoft Corporation. All rights reserved. 

CMakeCCompilerId.c 
Microsoft (R) Incremental Linker Version 14.00.23026.0 
Copyright (C) Microsoft Corporation. All rights reserved. 

/out:CMakeCCompilerId.exe 
CMakeCCompilerId.obj 
LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib' 


Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed. 
Compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/cl.exe 
Build flags: 
Id flags: 

The output was: 
2 
Microsoft (R) C/C++ Optimizing Compiler Version 19.00.23026 for x86 
Copyright (C) Microsoft Corporation. All rights reserved. 

CMakeCXXCompilerId.cpp 
Microsoft (R) Incremental Linker Version 14.00.23026.0 
Copyright (C) Microsoft Corporation. All rights reserved. 

/out:CMakeCXXCompilerId.exe 
CMakeCXXCompilerId.obj 
LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib' 


Determining if the C compiler works failed with the following output: 
Change Dir: C:/Data/OtherTech/cmaketest/build/CMakeFiles/CMakeTmp 

Run Build Command:"nmake" "/NOLOGO" "cmTC_6fd86\fast" 
    "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\nmake.exe" -f CMakeFiles\cmTC_6fd86.dir\build.make /nologo -L     CMakeFiles\cmTC_6fd86.dir\build 

Building C object CMakeFiles/cmTC_6fd86.dir/testCCompiler.c.obj 

    C:\PROGRA~2\MICROS~3.0\VC\bin\cl.exe @C:\Users\user1\AppData\Local\Temp\nm5A8B.tmp 

testCCompiler.c 

Linking C executable cmTC_6fd86.exe 

    C:\Users\user1\Desktop\Apps\cmake-3.4.0-win32-x86\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_6fd86.dir --manifests -- C:\PROGRA~2\MICROS~3.0\VC\bin\link.exe /nologo @CMakeFiles\cmTC_6fd86.dir\objects1.rsp @C:\Users\user1\AppData\Local\Temp\nm5B29.tmp 

The parameter is incorrectRC Pass 1 failed to run. 

NMAKE : fatal error U1077: 'C:\Users\user1\Desktop\Apps\cmake-3.4.0-win32-x86\bin\cmake.exe' : return code '0xffffffff' 

Stop. 

NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\nmake.exe"' : return code '0x2' 

Stop. 

私は、このエラーに関する情報を検索し、おそらく私のPowerShellセッションがアクセス権を持っていないことを考え出しました。 C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ VCに行って、実行しました。

環境を設定するには

が必要ですが、残念ながらそれは役に立ちませんでした。

この問題を解決する方法はありますか?

答えて

2

Visual Studioネイティブツールのコマンドプロンプトからcmakeまたはcmake-guiを実行し、プレーンコマンドプロンプトを実行しないでください。そうすれば、必要なすべてのパスが正しく設定され、cmakeに見えます。

関連する問題