2016-08-22 40 views
-1

here的構建方向,除了我有更新版本的工具。cmake忍者鐺窗口失敗helloworld

CMake的(3.6.1),忍者(1.7.1),VS-工作室社區2015年

clang version 3.8.1 (branches/release_3 
Target: x86_64-pc-windows-msvc 
Thread model: posix 
InstalledDir: C:\Program Files\LLVM\bin 

我注意到,步驟Detecting CXX compile features失敗。爲了簡潔起見,我只包括了大約20個錯誤中的第一個。

的CMakeLists.txt

cmake_minimum_required(VERSION 3.0) 
project(helloworld) 
add_executable(${PROJECT_NAME} main.cpp) 

的main.cpp

#include <iostream> 

int main(int argc, char *argv[]) 
{ 
    std::cout << "Hello World\n"; 
    return 0; 
} 

打開VS2015或x64原生工具命令提示符

>> set PATH=C:\Program Files\LLVM\msbuild-bin;%PATH% 
>> set INCLUDE=C:\Program Files\LLVM\lib\clang\3.8.1\include;%INCLUDE% 
>> cmake -G "Ninja" .. 
-- The C compiler identification is Clang 3.8.1 
-- The CXX compiler identification is Clang 3.8.1 
-- Check for working C compiler: C:/Program Files/LLVM/msbuild-bin/cl.exe 
-- Check for working C compiler: C:/Program Files/LLVM/msbuild-bin/cl.exe -- works 
-- Detecting C compiler ABI info 
-- Detecting C compiler ABI info - done 
-- Check for working CXX compiler: C:/Program Files/LLVM/msbuild-bin/cl.exe 
-- Check for working CXX compiler: C:/Program Files/LLVM/msbuild-bin/cl.exe -- works 
-- Detecting CXX compiler ABI info 
-- Detecting CXX compiler ABI info - done 
-- Detecting CXX compile features 
-- Detecting CXX compile features - failed 
-- Configuring done 
-- Generating done 
-- Build files have been written to: C:/Users/griffic/src/helloworld/ninjabuild 

>> ninja 
C:\PROGRA~1\LLVM\MSBUIL~1\cl.exe /nologo /DWIN32 /D_WINDOWS /W3 /GR /EHsc /D_DEBUG /MDd /Zi /Ob0 /Od /RTC1 /showIncludes /FoCMakeFiles\helloworld.dir\main.cpp.obj /FdCMakeFiles\helloworld.dir\ -c ..\main.cpp 
In file included from ..\main.cpp:1: 
In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\iostream:6: 
In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\istream:6: 
In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ostream:6: 
In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ios:6: 
In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xlocnum:7: 
In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\cmath:647: 
In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xtgmath.h:8: 
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xtr1common(213,22) : error: use of undeclared identifier 'char16_t' 
     struct _Is_integral<char16_t> 
          ^
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xtr1common(219,22) : error: use of undeclared identifier 'char32_t' 
     struct _Is_integral<char32_t> 

回答

0

我抓起4.0窗戶快照here,這工作了我爲helloworld。不幸的是,它在一個稍大的測試程序中失敗了,該程序結合了gtest的使用。

但是我沒有設置路徑,而是使用4.0快照創建了helloworld函數。

推開VS2015 x64的本機工具命令提示

>> set CC=clang-cl 
>> set CXX=clang-cl 
>> cmake -G "Ninja" .. 
>> ninja