How can I make CMake use Mingw-w64 gcc/g++? [duplicate]

允我心安 提交于 2021-02-07 22:56:14

问题


I am on Windwos trying to get Mingw-w64 to work with CMake since my MSVC is somehow not working at all (using Windows10 64bit.

Basically I add the arguments -DCMAKE_CXX_COMPILER="C:/MinGW-w64/mingw64/bin/g++.exe" -DCMAKE_C_COMPILER="C:/MinGW-w64/mingw64/bin/gcc.exe" to my call to CMake which sets the corresponding compiler.

However I get these errors:

-- The C compiler identification is unknown
-- The CXX compiler identification is unknown
-- Check for working C compiler: C:/MinGW-w64/mingw64/bin/gcc.exe
-- Check for working C compiler: C:/MinGW-w64/mingw64/bin/gcc.exe -- broken
CMake Error at C:/Program Files/CMake/share/cmake-3.12/Modules/CMakeTestCCompiler.cmake:52 (message):
  The C compiler

    "C:/MinGW-w64/mingw64/bin/gcc.exe"

  is not able to compile a simple test program.

How could I get this to work?


回答1:


The simplest way to generate makefiles for MinGW (and MinGW-w64) is to use the appropriate CMake generator. Just call cmake with

-G "MinGW Makefiles"

no need to set DCMAKE_CXX_COMPILER and DCMAKE_C_COMPILER by hand.

For this to work, CMake must find your compilers. So this path must be added to the windows PATH variable, as CristiFati pointed out:

C:/MinGW-w64/mingw64/bin

To check if the PATH is correct, fire up a Windows command prompt and run

where gcc

The output should be (at least) the path you just added to the Windows PATH variable.



来源:https://stackoverflow.com/questions/51509173/how-can-i-make-cmake-use-mingw-w64-gcc-g

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!