赞
踩
以libssh2为例说明如何在命令行中使用vcpkg
2、安装libssh2
> vcpkg install libssh2:x64-windows
1、创建目录libssh2_test
。 我的完整目录是C:\Users\oceanstar\source\repos\libssh2_test
cmake_test.h
#pragma once
#include <iostream>
cmake_test.cpp
#include <libssh2.h> #include <libssh2_sftp.h> #include <sys/types.h> #include <fcntl.h> #include <errno.h> #include <stdio.h> #include <ctype.h> int main(int argc, char* argv[]) { if (!libssh2_version(LIBSSH2_VERSION_NUM)) { fprintf(stderr, "Runtime libssh2 version too old!"); exit(1); } printf("libssh2 version: %s", libssh2_version(0)); return 0; }
CMakeLists.txt:
cmake_minimum_required (VERSION 3.8)
project ("cmake_test")
cmake_minimum_required (VERSION 3.8)
# 将源代码添加到此项目的可执行文件。
add_executable (cmake_test "cmake_test.cpp" "cmake_test.h")
# TODO: 如有需要,请添加测试并安装目标。
find_package(Libssh2 CONFIG REQUIRED)
target_link_libraries(cmake_test PRIVATE Libssh2::libssh2)
打开PowerShell(注意一定要是PowerShell,Cmd没有用),进入C:/Users/oceanstar/source/repos/libssh2_test/build,执行如下命令:cmake .. -DCMAKE_TOOLCHAIN_FILE=C:/Users/oceanstar/vcpkg/win/vcpkg/scripts/buildsystems/vcpkg.cmake
成功。
CMakeLists.txt:(这里需要注意的是,设置CMAKE_TOOLCHAIN_FILE要在project()命令之前)
cmake_minimum_required (VERSION 3.8)
SET(CMAKE_TOOLCHAIN_FILE "C:/Users/oceanstar/vcpkg/win/vcpkg/scripts/buildsystems/vcpkg.cmake")
project ("cmake_test")
cmake_minimum_required (VERSION 3.8)
# 将源代码添加到此项目的可执行文件。
add_executable (cmake_test "cmake_test.cpp" "cmake_test.h")
# TODO: 如有需要,请添加测试并安装目标。
find_package(Libssh2 CONFIG REQUIRED)
target_link_libraries(cmake_test PRIVATE Libssh2::libssh2)
打开PowerShell(注意一定要是PowerShell,Cmd没有用),进入C:/Users/oceanstar/source/repos/libssh2_test/build,执行如下命令:cmake ..
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。