Windows에서 Cmake
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
- 설치된 Visual Studio를 찾을 수 없습니다.
- C/C++ 컴파일러를 찾을 수 없습니다.
PATH
환경 - 그것은 찾을 수 없었습니다.
CC
컴파일러의 전체 경로로 정의된 환경 변수
기본값은 다음과 같습니다.nmake
.
여기서 문제가 발생합니다. 가변 캐시에서 암묵적인 생성기/컴파일러 선택을 기억합니다( 참조).CMAKE_GENERATOR
에CMakeCache.txt
) 컴파일러가 여러 개 설치된 경우 매우 유용한 기능은 무엇입니까?
하지만 만약 당신이 선언한다면,CC
오류 메시지에서 알 수 있듯이 환경 변수는 제너레이터의 선택이 첫 번째 시도에서 기억되었기 때문에 너무 늦었습니다.
두 가지 가능한 방법이 있습니다.
- 다음과 같이 올바른 제너레이터를 지정하여 제너레이터 선택을 무시합니다.
cmake.exe -G "MinGW Makefiles" ..
(@Guillaume이 연결한 답이 암시하듯이) - 프로젝트의 이진 출력 디렉터리 삭제(다음 포함)
CMakeCache.txt
) 및 을 합니다.cmake.exe ..
컴파일러를 추가한 후bin
폴더의 폴더PATH
환경.
레퍼런스
- Windows에서 CMake 실행
- Windows에서 CMake의 기본 생성기는 무엇입니까?
- CMakeLists에서 CMake 오류가 발생했습니다.txt:30(프로젝트):CMKE_C_COMPILLER를 찾을 수 없습니다.
- Cmake: 작업할 Visual C++ 버전을 어떻게 지정합니까?
사용합니다cmake -G "MinGW Makefiles" .
대신에cmake .
효과가 있었어요!
저는 같은 문제를 접했고 저에게 효과가 있었던 것은 다음과 같습니다.
- 2019년 버전(현재 2021년)을 설치해야 합니다. 몇 가지 추가 사항이 있지만 괜찮습니다.전체적으로 약 6.7G입니다.
- 당신은 정말로 필요하지 않습니다.
pip install dlib
일부와 나머지
- 위의 튜토리얼을 바탕으로 환경 변수에 이 경로를 추가했습니다(
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30037\bin\Hostx64\x64
환경 변수에 경로를 추가하는 방법은 위 자습서에서도 확인할 수 있습니다.)
언급URL : https://stackoverflow.com/questions/35869564/cmake-on-windows
'programing' 카테고리의 다른 글
Ionic 5 또는 캐패시터 5로 업그레이드한 후 TypeScript 컴파일에서 src/zone-flags.ts가 누락됨 (0) | 2023.07.23 |
---|---|
"/", "\"?를 사용하는 플랫폼 독립 경로 연결 (0) | 2023.07.23 |
여러 레코드 INSERT 문에 사용되는 MySQL LAST_INSERT_ID() (0) | 2023.07.23 |
파이어베이스InstanceIdService가 더 이상 사용되지 않습니다. (0) | 2023.07.23 |
실행 시간 제한에 절전 시간이 포함됩니까? (0) | 2023.07.23 |