我想用Clang 4.0编译一个应用程序,CMake 3.8.1,MinGW x86_64 6.3.0。 我试过了:
cmake -G "MinGW Makefiles" -DCMAKE_C_COMPILER=clang.exe -DCMAKE_CXX_COMPILER=clang++ ..\code
但是由于传递了Visual Studio的编译器参数,testing程序的编译失败。 我想不使用Visual Studio。 输出:
-- The C compiler identification is Clang 4.0.0 -- The CXX compiler identification is Clang 4.0.0 -- Check for working C compiler: C:/Program Files/LLVM/bin/clang.exe -- Check for working C compiler: C:/Program Files/LLVM/bin/clang.exe -- broken CMake Error at C:/Program Files/CMake/share/cmake-3.8/Modules/CMakeTestCCompiler.cmake:51 (message): The C compiler "C:/Program Files/LLVM/bin/clang.exe" is not able to compile a simple test program. clang.exe: error: no such file or directory: '/nologo' clang.exe: error: no such file or directory: '/DWIN32' clang.exe: error: no such file or directory: '/D_WINDOWS'
我也试过:
cmake -G "MinGW Makefiles" -DCMAKE_C_COMPILER="C:/Program Files/LLVM/msbuild-bin/cl.exe" -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/msbuild-bin/cl.exe" -DCMAKE_LINKER="C:/Program Files/LLVM/bin/lld-link.exe" ..\code
在编写testing程序时也失败了:
C:\PROGRA~1\LLVM\bin\lld-link.exe /nologo @CMakeFiles\cmTC_afe59.dir\objects1.rsp /out:cmTC_afe59.exe /implib:cmTC_afe59.lib /pdb:C:\...........\_build\CMakeFiles\CMakeTmp\cmTC_afe59.pdb /version:0.0 /machine:x64 /debug /pdbtype:sept /INCREMENTAL:YES /subsystem:console kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib error: could not open /pdbtype:sept: no such file or directory
是否有可能在Windows 10上用MinGw强制Clang?