[英]CMake on Windows
我正在尝试在 Windows 上运行 CMake,但出现以下错误:
-- The C compiler identification is unknown
CMake Error at CMakeLists.txt:3 (PROJECT):
The CMAKE_C_COMPILER:
cl
is not a full path and was not found in the PATH.
To use the NMake generator with Visual C++, cmake must be run from a shell
that can use the compiler cl from the command line. This environment is
unable to invoke the cl compiler. To fix this problem, run cmake from the
Visual Studio Command Prompt (vcvarsall.bat).
Tell CMake where to find the compiler by setting either the environment
variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
the compiler, or to the compiler name if it is in the PATH.
但是我的“CC”环境变量已设置!
>>echo %CC%
C:\Anaconda2\MinGW\x86_64-w64-mingw32\bin\gcc.exe
因为 CMake 的错误消息在这里具有误导性,我认为它需要更详细的答案。
简而言之,您遇到了鸡与蛋的问题。
CMake 的编译器检测功能强大,但由于 - 在第一次尝试期间 -
-G
一起使用的显式生成器PATH
环境中找不到任何 C/C++ 编译器CC
环境变量它默认为nmake
。
现在问题来了:它确实记住了您在变量缓存中的隐式生成器/编译器选择(请参阅CMAKE_GENERATOR
中的CMakeCache.txt
)。 如果您安装了多个编译器,这是一个非常有用的功能。
但是,如果您随后声明CC
环境变量 - 正如错误消息所暗示的那样 - 为时已晚,因为在第一次尝试时记住了您的生成器的选择。
我看到了两种可能的方法:
cmake.exe -G "MinGW Makefiles" ..
(如@Guillaume 链接的答案所建议的) 给出正确的选项来cmake.exe -G "MinGW Makefiles" ..
生成器的选择CMakeCache.txt
)并在将编译器的bin
文件夹添加到PATH
环境后执行cmake.exe ..
。参考
我使用cmake -G "MinGW Makefiles" .
而不是cmake .
有效!
我遇到了同样的问题,对我有用的是:
pip install dlib
部分和其余部分。C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.29.30037\\bin\\Hostx64\\x64
添加了这个路径。添加环境变量路径的方法也可以在上面的教程中找到。)你的cmake是如何安装的? 如果您使用cygwin安装它,现在尝试cmake官方站点的最新Windows版本并设置PATH变量以确保使用正确的cmake版本。 它对我有用,希望它对你也有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.