x64-linux下在vscode使用vcpkg

1.使用vscode远程连接上对应的linux ,或者直接在图形化界面上使用。
2.安装vcpkg 插件,然后打开插件设置。
注意:defalut和host的主机一定和你自己的主机一致,且必须符合vcpkg三元组格式,其中你可以选择工作台的设置,这样每个工作区都设置。
请添加图片描述

3.在你自己的项目目录下新建一个vcpkg.json,最简单的格式如下,如果你有更加细致的版本控制需求,可自行去官网查询。

{
    "dependencies": [
        "jsoncpp",
        "boost"
    ]
}

4.编写cmakelist,这个里面可能需要你指定编译器。但是这不是关键

  • 你要把需要找的库,结合使用 find_package()函数,和target_link_libraries() 函数链接到你的项目
  • 有些特殊的库可能不需要连接,比如boost,因此你就没有必要添加
    样板如下:
cmake_minimum_required(VERSION 3.5)

set(CMAKE_C_COMPILER "/usr/bin/gcc")
set(CMAKE_CXX_COMPILER "/usr/bin/g++")
project(my_app VERSION 1.0)
set(VCPKG_TARGET_ARCHITECTURE x64-linux)

find_package(jsoncpp CONFIG REQUIRED)

# 添加您的可执行文件
add_executable(my_app main.cc)

target_link_libraries(my_app PRIVATE JsonCpp::JsonCpp)

5.在使用该库过程中,可能还是需要安装各种依赖,比如boost安装时,要openssl。openssl有需要autoconf等一些列工具,autoconf有可能找不到配置文件需要autoconf-archive。
等等一些列问题,总体来说可能vcpkg目前没有达到这个库最开始的那种需求自动化满足库的需求。但是其不添加进系统库所带来的良好隔离性个人认为还是值得使用的。

个人遇见问题总结
安装boost库如果出现 …unset
https://github.com/microsoft/vcpkg/pull/38979


sudo apt-get update && sudo apt-get upgrade
sudo apt-get install git
sudo apt-get install curl
sudo apt-get install tar
sudo apt-get install unzip
sudo apt-get install build-essential
sudo apt-get install libtool
sudo apt-get install autotools-dev
sudo apt-get install automake
sudo apt-get install autoconf
sudo apt-get install autoconf-archive
sudo apt-get install python3
sudo apt-get install python3-pip
sudo apt-get install python3-dev
sudo apt-get install pkg-config g++ cmake autoconf autoconf-archive


//centos下除了上述对应的必需库之外,可能额外需要一些库
`apk add linux-headers`.  //找对应的的库头文件
`apt install linux-libc-dev`.
sudo dnf install perl-FindBin  #find.bm
sudo dnf install perl

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值