On 04/21/2016 10:15 AM, Johan Holmberg wrote: > I chose the binaries behaving like "gcc" > > I realize that Cristian Adams recommended using the "cl.exe" wrapper in > his response, but I wanted at least to try using the "gcc-like" binaries > first, hoping that they should work with CMake.
I think that is the problem. See below. > E:\work\proj\hello1\build> cmake -GNinja ..\src > -- The C compiler identification is Clang 3.8.0 > -- The CXX compiler identification is Clang 3.8.0 >From the compiler id files you sent me I see: $ strings build/CMakeFiles/3.5.1/CompilerIdC/a.exe | grep INFO INFO:compiler[Clang] INFO:simulate[MSVC] INFO:compiler_version[00000003.00000008.00000000] INFO:simulate_version[00000018.00000000] INFO:platform[Windows] INFO:arch[x64] INFO:dialect_default[11] $ strings build/CMakeFiles/3.5.1/CompilerIdCXX/a.exe | grep INFO INFO:compiler[Clang] INFO:simulate[MSVC] INFO:platform[Windows] INFO:arch[x64] INFO:dialect_default[11] INFO:compiler_version[00000003.00000008.00000000] INFO:simulate_version[00000018.00000000] The "INFO:simulate[MSVC]" lines mean that CMake has detected that the given Clang compiler defines _MSC_VER and therefore acts like MSVC and not GNU (i.e. uses the msvc ABI instead of the gnu ABI). CMake then assumes that the compiler command line is compatible with "cl". We have code that switches off this here: https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Platform/Windows-Clang.cmake;hb=v3.5.2 https://cmake.org/gitweb?p=cmake.git;a=blob;f=Modules/Compiler/Clang.cmake;hb=v3.5.2 When all that was written clang-cl was still under development and our assumption was that there is no such thing as a Clang that acts like MSVC but is not cl-compatible on the command line. -Brad -- 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