我正在尝试在我的 windows 桌面上安装一个名为 NUPACK 的软件套件,用于设计核酸反应途径。http://www.nupack.org/
这个软件需要安装CMake,据我了解,CMake本身没有编译器,需要我们单独安装编译器。因此,我下载了 MinGW 以用作 C++ 编译器。在运行之前,我已经设置了 CMake 和 MinGW 的 bin 的环境变量。我正在通过命令提示符运行 CMake(版本 3.11.1),但我一直遇到以下问题:
C:\Users\Nicholas\Documents\nupack\build>Cmake -DCMAKE_INSTALL_PREFIX=NUPACKINSTALL -G "MinGW Makefiles" ..
-- The C compiler identification is unknown
-- The CXX compiler identification is unknown
-- Check for working C compiler: C:/MinGW/bin/gcc.exe
-- Check for working C compiler: C:/MinGW/bin/gcc.exe -- broken
CMake Error at C:/Program Files/CMake/share/cmake-
3.11/Modules/CMakeTestCCompiler.cmake:52 (message):
The C compiler
"C:/MinGW/bin/gcc.exe"
is not able to compile a simple test program.
Run Code Online (Sandbox Code Playgroud)
我猜 CMake 无法以某种方式识别我的 MinGW gcc 和 gcc++ 编译器。我接下来尝试了以下操作,但出现了同样的错误。
set CMAKE_C_COMPILER=%C:\mingw\bin\gcc%
set CMAKE_CXX_COMPILER=%C:\mingw\bin\g++%
Run Code Online (Sandbox Code Playgroud)
有没有人遇到过同样的问题?这可以通过使用 MinGW64 解决吗?我使用的是 Windows 10,之前我尝试使用 Visual Studio 2017 的编译器,但它也有一些问题。
是的,问题是 CMake 找不到 GCC 编译器。在确保安装了 g++ 和 gcc 之前。它可以是 MinGW64 或 Cygwin。
至少有三种方式可以链接 GCC 编译器。
第一种方式:
将编译器设置为CMakeLists.txt
:
set(CMAKE_C_COMPILER C:\path\to\gcc.exe)
set(CMAKE_CXX_COMPILER C:\path\to\g++.exe)
Run Code Online (Sandbox Code Playgroud)
方式二:
在终端或 cmd 中调用 cmake 时:
cmake -DCMAKE_C_COMPILER="C:\path\to\gcc.exe" -DCMAKE_CXX_COMPILER="C:\path\to\g++.exe"
Run Code Online (Sandbox Code Playgroud)
第三种方式:
设置为环境变量:转到 Windows“环境变量”并添加PATH
:
;C:\path_to_MinGW_or_Cygwin\bin
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8187 次 |
最近记录: |