Ubuntu18.04 vcpkg集成VScode
·
Ubuntu18.04 vcpkg集成VScode
文章目录
vcpkg
微软开源的C++包管理工具
安装vcpkg
下载
git clone https://github.com/microsoft/vcpkg.git
安装:进入vcpkg目录
./bootstrap-vcpkg.sh
执行集成命令
# integrate在Linux上似乎没有用
./vcpkg integrate install
# 命令行补全
./vcpkg integrate bash
集成VScode
需要的插件
- C/C++ for Visual Studio Code
- CMake For VisualStudio Code
- CMake Tools
- Visual Studio IntelliCode
重要的步骤
在vcpkg/triplets目录创建x86-linux.cmake文件,并添加
set(VCPKG_TARGET_ARCHITECTURE x86)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
set(VCPKG_CMAKE_SYSTEM_NAME Linux)
添加环境变量
VCPKG_DEFAULT_TRIPLET=x86-linux
这会使得vcpkg默认下载x86的包,如果不设置会默认下载x64.
如果不想设置这个变量,那么也可以下载时指定版本.
安装库
vcpkg install poco
#下载时指定版本
vcpkg install poco:x86-linux
指定cmake链接库版本
修改vcpkg/scripts/buildsystems/vcpkg.cmake的62行
elseif(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "x86_64")
set(_VCPKG_TARGET_TRIPLET_ARCH x64)
改为
elseif(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "x86_64")
set(_VCPKG_TARGET_TRIPLET_ARCH x86)
如果不修改,vcpkg会默认找x64的包,如果没有x64的包会报错
编写项目
//main.cpp 在src目录下
#include <iostream>
int main(int argc, char const *argv[])
{
std::cout << "/* message */" << std::endl;
return 0;
}
//CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
#这条命令是必须的,且必须在project(cmake_test)之前
set(CMAKE_TOOLCHAIN_FILE /home/yzz/snap/vcpkg/scripts/buildsystems/vcpkg.cmake)
project(cmake_test)
find_package(nlohmann_json CONFIG REQUIRED)
AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/src SRC_LIST)
add_executable(cmake_test ${SRC_LIST})
最后利用cmake构建项目
使用CMake Tools构建项目,手动构建的话需要额外链接c语言的库。
vcpkg虽然不够完美,但也总算是减轻我们的负担了。如果没有代码补全的话执行一次cmake就好.vcpkg与Clion集成步骤差不多,不过本人还没有尝试.
更多推荐
已为社区贡献3条内容
所有评论(0)