承接上篇 vcpkg 跨平台的c/c++库包管理工具(以libssh为例) - 夕西行 - 博客园
vcpkg安装libssh后,vs2022创建的cmake项目竟然不能find_package到libssh
问题出在CMakeLists.txt,注意位置1、2、3的顺序一定不能变
cmake_minimum_required (VERSION 3.20)#vcpkg————位置1 set(CMAKE_TOOLCHAIN_FILE "$ENV{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake" CACHE STRING "") set(VCPKG_TARGET_TRIPLET "x64-windows" CACHE STRING "") # 根据你的平台选择合适的triplet #项目名————位置2 project ("CMakeProject2") #查找包————位置3 find_package(libssh REQUIRED) #include_directories(${libssh_INCLUDE_DIRS}) #可以不写add_executable (CMakeProject2 "CMakeProject2.cpp" "CMakeProject2.h") target_link_libraries(CMakeProject2 PRIVATE ssh)
另外注意:包名是libssh,但是lib文件是ssh.lib。所以上述黄色处写的ssh