安装DPP库时遇FindSodium.cmake不支持当前平台错误求助
解决DPP库编译时FindSodium.cmake平台不支持问题
方法1:用MSYS2包管理器一键安装依赖
- 打开MSYS2的MINGW64终端,执行命令安装所有编译所需依赖:
pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-libsodium mingw-w64-x86_64-openssl mingw-w64-x86_64-zlib - 重新运行CMake,可跳过测试编译加快速度:
cmake -G "MinGW Makefiles" .. -DDPP_BUILD_TEST=FALSE
方法2:手动修改FindSodium.cmake适配MSYS2
- 找到DPP源码目录下的
cmake/FindSodium.cmake文件,定位到平台判断代码块(约190行),添加MSYS平台的适配逻辑:elseif(CMAKE_SYSTEM_NAME MATCHES "MSYS") set(Sodium_FOUND TRUE) find_path(Sodium_INCLUDE_DIR sodium.h PATHS /mingw64/include) find_library(Sodium_LIBRARY NAMES sodium PATHS /mingw64/lib) set(Sodium_LIBRARIES ${Sodium_LIBRARY}) set(Sodium_INCLUDE_DIRS ${Sodium_INCLUDE_DIR}) - 保存文件后重新执行CMake命令。
方法3:通过VCPKG管理依赖
- 在MSYS2终端中安装VCPKG并配置libsodium:
git clone https://github.com/microsoft/vcpkg.git ./vcpkg/bootstrap-vcpkg.sh ./vcpkg install libsodium:x64-mingw-static - 运行CMake时指定VCPKG工具链文件:
cmake -G "MinGW Makefiles" .. -DCMAKE_TOOLCHAIN_FILE=/你的vcpkg路径/scripts/buildsystems/vcpkg.cmake
内容的提问来源于stack exchange,提问作者IG2MB
相关产品推荐
相关产品推荐

