IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> qt creator使用vcpkg -> 正文阅读

[开发工具]qt creator使用vcpkg

概述

网上关于如何在QT Creator 中使用vcpkg的教程较少,且很多无效,介绍下目前我使用的方法。

Qt Creator:7.0.1
Qt:6.2.3
MacOS:Monterey 12.2.1

Cmake中使用vcpkg

方式一:

$ cmake .. "-DCMAKE_TOOLCHAIN_FILE=D:\src\vcpkg\scripts\buildsystems\vcpkg.cmake"

方式二:

cmake_minimum_required(VERSION 3.14)

project(chatkit)

# 工程中使用vcpkg安装的库,改成自己的vcpkg安装目录
set(CMAKE_TOOLCHAIN_FILE "/Users/xxx/repo/github/vcpkg/scripts/buildsystems/vcpkg.cmake")

那么,在QT Creator中如何使用vcpkg,来安装第三方库依赖呢?

QT Creator 使用vcpkg

直接在项目Tab下面的增加 CMAKE_TOOLCHAIN_FILE ,具体如下:

  1. 点击项目
  2. 点击initial configuration
  3. 点击Add -> String
  4. key输入:CMAKE_TOOLCHAIN_FILE
  5. value输入:你vcpkg安装的路径
    请添加图片描述
  6. 点击 Re-configure with inital Parameters

此时,我们观察输出:
在这里插入图片描述
成功!

附录:我的完整CMakeLists.txt

cmake_minimum_required(VERSION 3.14)

project(chatkit)

add_definitions(
        -g
        -fPIC
        -D__STDC_FORMAT_MACROS
        -Wall
        -Wno-unused-parameter
        -Wno-unused-function
        -Wno-unused-const-variable
        -Wno-unused-variable
        -Wno-unused-value
        -Wshadow
        -Wcast-qual
        -Wcast-align
        -Wwrite-strings
        -Wsign-compare
        -Winvalid-pch
        -fms-extensions
        -Wfloat-equal
        -Wextra
        -std=c++11
        #-Werror # 警告视为错误,比较严格,可以根据需求启用
)

# 库名字和版本号设置
set(ChatKitLib chatkit)
set(ChatKitLib_VERSION 0.1.0)

# 源码文件
aux_source_directory(cim CHAT_KIT_SRC)
aux_source_directory(cim/base CHAT_KIT_SRC)
aux_source_directory(cim/base/file CHAT_KIT_SRC)
aux_source_directory(cim/base/util CHAT_KIT_SRC)
aux_source_directory(cim/core CHAT_KIT_SRC)
aux_source_directory(cim/crypt CHAT_KIT_SRC)
aux_source_directory(cim/db CHAT_KIT_SRC)
aux_source_directory(cim/pb CHAT_KIT_SRC)

if (APPLE) # 使用vcpkg 快速安装的依赖
    find_package(protobuf CONFIG REQUIRED)
    find_package(spdlog CONFIG REQUIRED)
    find_package(restclient-cpp CONFIG REQUIRED)
    find_package(SQLiteCpp CONFIG REQUIRED)
    find_package(unofficial-libuv CONFIG REQUIRED)
    find_package(nlohmann_json CONFIG REQUIRED)
else ()
    #set(VCPKG_INCLUDE_DIR /Users/xuyc/repo/github/vcpkg/installed/x64-osx/include)
    #set(VCPKG_LIB_DIR /Users/xuyc/repo/github/vcpkg/installed/x64-osx/lib)
endif ()

# 动态库
add_library(${ChatKitLib} SHARED ${CHAT_KIT_SRC})
#add_library(${ChatKitLib} STATIC)
# 起一个别名
add_library(cim::chatkit ALIAS ${PROJECT_NAME})

target_include_directories(${PROJECT_NAME}
        PUBLIC
        ${PROJECT_SOURCE_DIR} # chatKit目录,这样外部就能找到头文件所在目录了
        ${VCPKG_INCLUDE_DIR}
        )
target_link_directories(${PROJECT_NAME}
        PUBLIC
        ${VCPKG_LIB_DIR})

target_link_libraries(${ChatKitLib}
        PRIVATE
        # 在macOS下,是静态库,windiws下,需要显式安装静态库,否则为动态库
        protobuf::libprotobuf-lite
        restclient-cpp
        SQLiteCpp
        spdlog::spdlog
        nlohmann_json::nlohmann_json
        unofficial::libuv::libuv
        )

关于

写了Qt开源的IM 客户端,如果感兴趣,不妨点个Star🤝

目前还在开发中,放一个设计图:

在这里插入图片描述

参考

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-05-25 11:41:27  更:2022-05-25 11:41:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 0:30:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码