Hi Anton, clang.exe doesn't know of any windows specific things. Clang-cl instead does.
Just make sure to have clang-cl before msvc-cl in path and ninja will just work. Cheers, Cristian On Mar 4, 2016 01:31, "Anton Yartsev" <anton.yart...@gmail.com> wrote: > Hi all, > > I'm trying to use Clang, compiled with VS 2013 (configuration:Release, > platform:x64) as a C/C++ compiler for a simple HelloWorld CMake project. > Generation ends up with errors like "clang.exe: error: no such file or > directory: '/DWIN32'" at compiler check stage. If I understand correctly > the problem is that MSVC compiler options are fed to Clang for some reason > (maybe the "-- The C compiler identification is unknown" log entry is > related to the problem?). > Could anyone help to resolve this, please? > > I also tried to change compiler ID with "-DCMAKE_C_COMPILER_ID=Clang > -DCMAKE_CXX_COMPILER_ID=Clang", then compilation succeeded, but linkage > failed (just as described in the thread "Question on usage of cmake on > Windows with clang" > http://thread.gmane.org/gmane.comp.programming.tools.cmake.user/54650). > Here the problem seems to be reversed: GNU linker options are fed to MS > linker. > > ************** Setup and details: > 1) INCLUDE and PATH set to clang/clang-cl > 2) command line environment is configured with vsvars32.bat > 3) CC and CXX set to clang > > $ cat CMakeLists.txt > project(test_project) > add_executable(main file.cpp) > > $ cmake -G "Ninja" -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang .. > > Log: > -- The C compiler identification is unknown > -- The CXX compiler identification is Clang 3.7.1 > -- Check for working C compiler using: Ninja > -- Check for working C compiler using: Ninja -- broken > CMake Error at C:/Program > Files/CMake/share/cmake-3.5/Modules/CMakeTestCCompiler.cmake:61 (message): > The C compiler "D:/-Work-/llvm-3.7.1.src/-VS_build VS > 2013-/Release/bin/clang.exe" is not able to compile a simple test > program. > It fails with the following output: > Change Dir: D:/-Work-/llvm-3.7.1.src/-CLANG-/CMakeFiles/CMakeTmp > > Run Build Command:"C:/PROGRA~1/ninja/ninja.exe" "cmTC_2cb9d" > > [1/2] Building C object CMakeFiles\cmTC_2cb9d.dir\testCCompiler.c.obj > > FAILED: D:\-Work-\LLVM-3~2.SRC\-VS_BU~2\Release\bin\clang.exe /DWIN32 > /D_WINDOWS /W3 -o CMakeFiles\cmTC_2cb9d.dir\testCCompiler.c.obj -c > testCCompiler.c > > clang.exe: error: no such file or directory: '/DWIN32' > clang.exe: error: no such file or directory: '/D_WINDOWS' > ... > > OS: Windows 7 (x64) > > clang version 3.7.1 (tags/RELEASE_371/final) > Target: x86_64-pc-windows-msvc > Thread model: posix > > cmake version 3.5.0-rc3 > > Thank you! > > -- > Anton > > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake >
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake