Windows conan环境搭建

news2024/12/28 19:02:05

Windows conan环境搭建

  • 1 安装conan
    • 1.1 安装依赖软件
      • 1.1.1 python安装
      • 1.1.2 git bash安装
      • 1.1.3 安装Visual Studio Community 2019
        • 1.1.3.1 选择安装的组件
        • 1.1.3.2 选择要支持的工具以及对应的SDK
      • 1.1.4 vscode安装
    • 1.3 验证conan功能
    • 1.4 查看conancenter是否包含poco包
    • 1.5 查看poco/1.9.4的conan信息
    • 1.6 新建conanfile.txt
    • 1.7 安装所需的依赖项并生成构建系统的信息

1 安装conan

1.1 安装依赖软件

1.1.1 python安装

pip需要依赖python (>= 3.9),我本地安装的3.10.10版本的python。
Python 软件包:
python软件包直接去官网下载比较慢,在安装时选中安装路径添加到环境变量(Add Python to PATH)的选项,其他的默认安装即可。
python的官方网站:
https://www.python.org/downloads/windows/

1.1.2 git bash安装

可以在http://www.git-scm.com/download/下载对应的windows版本的git去安装使用。

1.1.3 安装Visual Studio Community 2019

打开Microsoft Store中搜索Visual Studio Community 2019,选择安装。
如果选择Visual Studio Community 2022请参考该篇博文:windows环境下VSCode配置C++教程(使用msvc编译器),需要注意的是Visual Studio Community 2022对应的MSVC是17而不是2019版的16,如果使用msvc16去编译需要对应的适配一个msvc17的profile配置文件。

1.1.3.1 选择安装的组件

[图片]

1.1.3.2 选择要支持的工具以及对应的SDK

[图片]

1.1.4 vscode安装

可以直接在vscode官网下载Download Visual Studio Code - Mac, Linux, Windows,需要选择System Installer软件包安装。
在这里插入图片描述

1.2 安装1.55.0版本的conan
conan在windows上最新的版本是2.xx的,conan的1.xx版本和2.xx版本的差异非常大,我们在开发时目前需要的是conan 1.xx版本去做代码库管理工作,在安装时需要制定要安装的1.xx的conan版本号。

pip install conan=1.55

1.3 验证conan功能

直接在windows的powershell视图执行conan命令即可,执行之后会显示conan的帮助信息。

PS C:\Users\test> conan
Consumer commands
  install    Installs the requirements specified in a recipe (conanfile.py or conanfile.txt).
  config     Manages Conan configuration.
  get        Gets a file or list a directory of a given reference or package.
  info       Gets information about the dependency graph of a recipe.
  search     Searches package recipes and binaries in the local cache or a remote. Unless a
             remote is specified only the local cache is searched.
Creator commands
  new        Creates a new package recipe template with a 'conanfile.py' and optionally,
             'test_package' testing files.
  create     Builds a binary package for a recipe (conanfile.py).
  upload     Uploads a recipe and binary packages to a remote.
  export     Copies the recipe (conanfile.py & associated files) to your local cache.
  export-pkg Exports a recipe, then creates a package from local source and build folders.
  test       Tests a package consuming it from a conanfile.py with a test() method.
Package development commands
  source     Calls your local conanfile.py 'source()' method.
  build      Calls your local conanfile.py 'build()' method.
  package    Calls your local conanfile.py 'package()' method.
  editable   Manages editable packages (packages that reside in the user workspace, but are
             consumed as if they were in the cache).
  workspace  Manages a workspace (a set of packages consumed from the user workspace that
             belongs to the same project).
Misc commands
  profile    Lists profiles in the '.conan/profiles' folder, or shows profile details.
  remote     Manages the remote list and the package recipes associated with a remote.
  user       Authenticates against a remote with user/pass, caching the auth token.
  imports    Calls your local conanfile.py or conanfile.txt 'imports' method.
  copy       Copies conan recipes and packages to another user/channel.
  remove     Removes packages or binaries matching pattern from local cache or remote.
  alias      Creates and exports an 'alias package recipe'.
  download   Downloads recipe and binaries to the local cache, without using settings.
  inspect    Displays conanfile attributes, like name, version, and options. Works locally,
             in local cache and remote.
  help       Shows help for a specific command.
  lock       Generates and manipulates lock files.
  frogarian  Conan The Frogarian

Conan commands. Type "conan <command> -h" for help
PS C:\Users\weihanwu>

1.4 查看conancenter是否包含poco包

PS D:\work> conan search poco --remote=conancenter
Existing package recipes:

poco/1.8.1
poco/1.9.3
poco/1.9.4
poco/1.10.0
poco/1.10.1
poco/1.11.0
poco/1.11.1
poco/1.11.2
poco/1.11.3
poco/1.12.5p1
poco/1.12.0
poco/1.12.1
poco/1.12.2
poco/1.12.3
poco/1.12.4
PS D:\work>

1.5 查看poco/1.9.4的conan信息

PS D:\work> conan inspect poco/1.9.4
name: poco
version: 1.9.4
url: https://github.com/conan-io/conan-center-index
homepage: https://pocoproject.org
license: BSL-1.0
author: None
description: Modern, powerful open source C++ class libraries for building network- and internet-based applications that run on desktop, server, mobile and embedded systems.
topics: ('building', 'networking', 'server', 'mobile', 'embedded')
generators: ['txt']
exports: None
exports_sources: None
short_paths: False
apply_env: True
build_policy: None
revision_mode: hash
settings: ('os', 'arch', 'compiler', 'build_type')
options:
    enable_active_record: [True, False, 'deprecated']
    enable_activerecord: [True, False]
    enable_activerecord_compiler: [True, False]
    enable_apacheconnector: [True, False]
    enable_cppparser: [True, False]
    enable_crypto: [True, False]
    enable_data: [True, False]
    enable_data_mysql: [True, False]
    enable_data_odbc: [True, False]
    enable_data_postgresql: [True, False]
    enable_data_sqlite: [True, False]
    enable_encodings: [True, False]
    enable_fork: [True, False]
    enable_json: [True, False]
    enable_jwt: [True, False]
    enable_mongodb: [True, False]
    enable_net: [True, False]
    enable_netssl: [True, False]
    enable_netssl_win: [True, False]
    enable_pagecompiler: [True, False]
    enable_pagecompiler_file2page: [True, False]
    enable_pdf: [True, False]
    enable_pocodoc: [True, False]
    enable_prometheus: [True, False]
    enable_redis: [True, False]
    enable_sevenzip: [True, False]
    enable_util: [True, False]
    enable_xml: [True, False]
    enable_zip: [True, False]
    fPIC: [True, False]
    shared: [True, False]
default_options:
    enable_active_record: deprecated
    enable_activerecord: True
    enable_activerecord_compiler: False
    enable_apacheconnector: False
    enable_cppparser: False
    enable_crypto: True
    enable_data: True
    enable_data_mysql: True
    enable_data_odbc: False
    enable_data_postgresql: True
    enable_data_sqlite: True
    enable_encodings: True
    enable_fork: True
    enable_json: True
    enable_jwt: True
    enable_mongodb: True
    enable_net: True
    enable_netssl: True
    enable_netssl_win: False
    enable_pagecompiler: False
    enable_pagecompiler_file2page: False
    enable_pdf: False
    enable_pocodoc: False
    enable_prometheus: False
    enable_redis: True
    enable_sevenzip: False
    enable_util: True
    enable_xml: True
    enable_zip: True
    fPIC: True
    shared: False
deprecated: None
PS D:\work>

1.6 新建conanfile.txt

conanfile.txt 
 [requires]
 poco/1.9.4

 [generators]
 cmake

1.7 安装所需的依赖项并生成构建系统的信息

mkdir build && cd build
conan install .. --build=missing

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1208857.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SQL 日期函数

在数据库中&#xff0c;日期和时间是经常需要处理的数据类型之一。SQL提供了许多内置的日期函数&#xff0c;用于对日期和时间进行操作、计算和比较。这些函数可以帮助我们提取日期的各个部分&#xff08;如年份、月份、日、小时、分钟等&#xff09;&#xff0c;执行日期的转换…

第一百七十二回 SegmentedButton组件

文章目录 1. 概念介绍2. 使用方法2.1 SegmentedButton2.2 ButtonSegment 3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 我们在上一章回中介绍了"SearchBar组件"相关的内容&#xff0c;本章回中将 介绍SegmentedButton组件.闲话休提&#xff0c;让我们一起Tal…

抖斗音_快块手直播间获客助手+采集脚本+引流软件功能介绍

软件功能&#xff1a; 支持同时采集多个直播间&#xff0c;弹幕&#xff0c;关*注&#xff0c;礼*物&#xff0c;进直播间&#xff0c;部分用户手*号,粉*丝团采集 不支持采集匿*名直播间 设备需求&#xff1a; 电脑&#xff08;win10系统&#xff09; 文章分享者&#xff1…

【Linux】第十五站:环境变量

文章目录 一、进程相关的一些概念1.一些常见的概念2.对于并发3.**进程切换** 二、环境变量1.PATH环境变量2.HOME环境变量3.SHELL环境变量4.env5.系统调用接口与环境变量6.什么是环境变量&#xff1f;7.命令行参数8.main函数的第三个命令行参数9.如何验证环境变量是可以被继承的…

java实现选择排序

图解 以下是Java实现选择排序的示例代码&#xff1a; public class SelectionSort {public static void selectionSort(int[] arr) {int n arr.length;// 遍历未排序部分的数组for (int i 0; i < n - 1; i) {// 在未排序部分中查找最小元素的下标int minIndex i;for (in…

MySQL 人脸向量,欧几里得距离相似查询

前言 如标题&#xff0c;就是通过提取的人脸特征向量&#xff0c;写一个欧几里得 SQL 语句&#xff0c;查询数据库里相似度排前 TOP_K 个的数据记录。做法虽然另类&#xff0c;业务层市面上有现成的面部检索 API&#xff0c;技术层现在有向量数据库。 用 MySQL 关系型存储 128 …

新学期帮娃把拖延症戒了!这个时间管理器太太太有用啦!

十个孩子九个拖延~ 不要唠叨&#xff0c;不要指责 时间流逝一眼可见&#xff0c;打败拖延症&#xff01; 赶紧把这款时间管理器用上 当当狸时间管理器 说起孩子没有时间观念、拖延症 每个老母亲都有一肚子苦水要倒&#xff5e;&#xff5e; 市面上有很多计时器&#xff0…

【k8s集群搭建(一):基于虚拟机的linux的k8s集群搭建_超详细_解决并记录全过程步骤以及自己的踩坑记录】

虚拟机准备3台Linux系统 k8s集群安装 每一台机器需要安装以下内容&#xff1a; docker:容器运行环境 kubelet:控制机器中所有资源 bubelctl:命令行 kubeladm:初始化集群的工具 Docker安装 安装一些必要的包&#xff0c;yum-util 提供yum-config-manager功能&#xff0c;另两…

主题讲座:全球增材制造现状与未来(暨香港科技大学广州|智能制造学域2024博士学位全额奖学金项目)

时间&#xff1a;2023 年11月16日&#xff08;星期四&#xff09;14:30 地点&#xff1a;合肥工业大学 学术会议中心三楼报告厅 主讲嘉宾&#xff1a;陈模军 助理教授 https://facultyprofiles.hkust-gz.edu.cn/faculty-personal-page/CHEN-Mojun/mjchen 报名表直达&#xff1…

Java 入门基础题

目录 1.输出一个整数的每一位 2.判定素数 3.求最大值方法的重载 4.输出闰年 5.打印 X 图形 6.数字9 出现的次数 7.计算分数的值 8. 模拟登陆 9.使用函数求最大值 10.斐波那契数列 星光不负赶路人&#xff0c;加油铁子们&#xff01;&#xff01;&#xff01; 1…

No205.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

人工智能与充电技术:携手共创智能充电新时代

人工智能与充电技术&#xff1a;携手共创智能充电新时代 摘要&#xff1a;本文探讨了人工智能与充电技术的结合及其在未来充电设施领域的应用。通过分析智能充电系统的技术原理、优势以及挑战&#xff0c;本文展望了由人工智能驱动的充电技术为未来电动交通带来的巨大变革与机…

java实现插入排序

图解 以下是Java实现插入排序的代码&#xff1a; public class InsertionSort {public static void main(String[] args) {int[] arr {5, 2, 4, 6, 1, 3};insertionSort(arr);System.out.println(Arrays.toString(arr)); // output: [1, 2, 3, 4, 5, 6]}public static void i…

【Linux】-文件系统的详解以及软硬链接

&#x1f496;作者&#xff1a;小树苗渴望变成参天大树&#x1f388; &#x1f389;作者宣言&#xff1a;认真写好每一篇博客&#x1f4a4; &#x1f38a;作者gitee:gitee✨ &#x1f49e;作者专栏&#xff1a;C语言,数据结构初阶,Linux,C 动态规划算法&#x1f384; 如 果 你 …

【Qt之QWizard】使用1

QWizard使用 描述方法枚举&#xff1a;enum QWizard::WizardButton枚举&#xff1a;enum QWizard::WizardOption枚举&#xff1a;enum QWizard::WizardStyle枚举&#xff1a;enum QWizard::WizardPixmap常用成员方法槽函数信号 示例设置标题添加page页设置按钮文本设置自定义按…

H5游戏源码分享-超级染色体小游戏

H5游戏源码分享-超级染色体小游戏 游戏玩法 不断地扩大发展同颜色的色块 用最少的步数完成游戏 <!DOCTYPE html> <html><head><meta charset"UTF-8"><meta name"viewport"content"widthdevice-width,user-scalableno,init…

Linux shell编程学习笔记25:tty

1 tty的由来 在 1830 年代和 1840 年代&#xff0c;开发了称为电传打字机&#xff08;teletypewriters&#xff09;的机器&#xff0c;这些机器可以将发件人在键盘上输入的消息“沿着线路”发送在接收端并打印在纸上。 电传打字机的名称由teletypewriters&#xff0c; 缩短为…

学习samba

文章目录 一、samba介绍二、samba的主要进程三、配置文件四、例子 一、samba介绍 1、SMB&#xff08;Server Message Block&#xff09;协议实现文件共享&#xff0c;也称为CIFS&#xff08;Common Internet File System&#xff09;。 2、是Windows和类Unix系统之间共享文件的…

Android拖放startDragAndDrop拖拽Glide灵活加载堆叠圆角图,Kotlin(6)

Android拖放startDragAndDrop拖拽Glide灵活加载堆叠圆角图&#xff0c;Kotlin&#xff08;6&#xff09; Android拖放startDragAndDrop拖拽Glide加载堆叠圆角图&#xff0c;Kotlin&#xff08;5&#xff09;-CSDN博客文章浏览阅读1.3k次。&#xfeff;&#xfeff;Android Dyna…

Python---集合中的交集 、并集 | 与差集 - 特性

用 & 来求两个集合的交集&#xff1a;-----键盘上的7上的符号&#xff0c;shift 7 同时按 用 | 来求两个集合的并集&#xff1a; -----键盘上的7上的符号&#xff0c;shift 同时按&#xff08;就是enter键上面那个|\ &#xff09; 用 - 来求两个集合的差集&#xff…