Visual Studio 2022 C++项目使用vcpkg安装包失败求助
vcpkg安装Eigen3时路径格式错误(C;/ 替代C:)导致编译器检测失败
我在StackOverflow上搜索过类似问题,但没找到和我情况匹配的案例,折腾十几个小时后写下这个求助。
执行命令 .\vcpkg install eigen3 安装Eigen3库时出现目录查找错误,看似简单但找不到解决方案。
错误信息如下:
error: 检测编译器信息时: "C:\agbami_data\c++_project\autotrans_cpp_12\vcpkg\buildtrees\detect_compiler\stdout-x64-windows.log"的日志文件内容如下: CMake Error at C:/agbami_data/c++_project/autotrans_cpp_12/vcpkg/scripts/ports.cmake:139 (message): Cannot find port: Directory does not exist: C;/agbami_data/c++_project/autotrans_cpp_12/vcpkg/scripts/detect_compiler error: vcpkg无法检测到活动编译器信息。请参考上述CMake失败输出。
能明显看到路径里的冒号被错误替换成了分号:C;/agbami_data/...,这肯定是问题根源,但我不知道怎么让系统识别正确路径应该是C:而非C;。
我的环境配置:
- Visual Studio 2022
- C++ 17编译器
- CMake版本3.30.0
项目的CMakeLists.txt内容如下,另外只有一个输出"Hello CMake."的源文件,是非常基础的配置:
# CMakeList.txt: autotrans_cpp_12에 대한 CMake 프로젝트, 여기에 소스를 포함하고 # 프로젝트 특정 논리를 정의합니다. # cmake_minimum_required (VERSION 3.8) # 지원되는 경우 MSVC 컴파일러에 대해 핫 다시 로드 사용하도록 설정합니다. if (POLICY CMP0141) cmake_policy(SET CMP0141 NEW) set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "$<IF:$<AND:$<C_COMPILER_ID:MSVC>,$<CXX_COMPILER_ID:MSVC>>,$<$<CONFIG:Debug,RelWithDebInfo>:EditAndContinue>,$<$<CONFIG:Debug,RelWithDebInfo>:ProgramDatabase>>") endif() project ("autotrans_cpp_12") find_package(Eigen3 REQUIRED) # 이 프로젝트의 실행 파일에 소스를 추가합니다. add_executable (autotrans_cpp_12 "autotrans_main.cpp" "autotrans_main.h") if (CMAKE_VERSION VERSION_GREATER 3.12) set_property(TARGET autotrans_cpp_12 PROPERTY CXX_STANDARD 20) endif() # TODO: 필요한 경우 테스트를 추가하고 대상을 설치합니다.
这个问题可能受之前项目配置影响,但我新建了极简项目测试,问题仍然存在。恳请各位提供解决建议,万分感谢!
内容的提问来源于stack exchange,提问作者Conan Moon
相关产品推荐
相关产品推荐

