Windows conan环境搭建
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 选择安装的组件
![[图片]](https://img-blog.csdnimg.cn/e68bbabde78f480a80f70eb95e1bf555.png)
1.1.3.2 选择要支持的工具以及对应的SDK
![[图片]](https://img-blog.csdnimg.cn/62a93644dbe54284b651bb97cf03bf00.png)
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 commandsinstall 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 aremote is specified only the local cache is searched.
Creator commandsnew 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 commandssource 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 areconsumed as if they were in the cache).workspace Manages a workspace (a set of packages consumed from the user workspace thatbelongs to the same project).
Misc commandsprofile 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 FrogarianConan 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: deprecatedenable_activerecord: Trueenable_activerecord_compiler: Falseenable_apacheconnector: Falseenable_cppparser: Falseenable_crypto: Trueenable_data: Trueenable_data_mysql: Trueenable_data_odbc: Falseenable_data_postgresql: Trueenable_data_sqlite: Trueenable_encodings: Trueenable_fork: Trueenable_json: Trueenable_jwt: Trueenable_mongodb: Trueenable_net: Trueenable_netssl: Trueenable_netssl_win: Falseenable_pagecompiler: Falseenable_pagecompiler_file2page: Falseenable_pdf: Falseenable_pocodoc: Falseenable_prometheus: Falseenable_redis: Trueenable_sevenzip: Falseenable_util: Trueenable_xml: Trueenable_zip: TruefPIC: Trueshared: 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
相关文章:
Windows conan环境搭建
Windows conan环境搭建 1 安装conan1.1 安装依赖软件1.1.1 python安装1.1.2 git bash安装1.1.3 安装Visual Studio Community 20191.1.3.1 选择安装的组件1.1.3.2 选择要支持的工具以及对应的SDK 1.1.4 vscode安装 1.3 验证conan功能1.4 查看conancenter是否包含poco包1.5 查看…...
如何使用Cpolar+Tipask,在ubuntu系统上搭建一个私人问答网站
文章目录 前言2.Tipask网站搭建2.1 Tipask网站下载和安装2.2 Tipask网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar临时数据隧道3.2 Cpolar稳定隧道(云端设置)3.3 Cpolar稳定隧道(本地设置) 4. 公网访问测试5. 结语 前…...
怎么在uni-app中使用Vuex(第一篇)
Vuex简介 vuex的官方网址如下 https://vuex.vuejs.org/zh/ 阅读官网请带着几个问题去阅读: vuex用于什么场景?vuex能给我们带来什么好处?我们为什么要用vuex?vuex如何实现状态集中管理? Vuex用于哪些场景? 组件之…...
【MySQL】库的相关操作 + 库的备份和还原
库的操作 前言正式开始创建数据库删除数据库编码集查看系统默认字符集以及校验规则字符集校验规则 所有支持的字符集和校验规则所有字符集所有校验规则 指明字符集和校验规则创建数据库相同的字符集用不同的校验规则读取会出现什么情况 alter修改数据库show create databasealt…...
网络安全基础之php开发文件上传的实现
前言 php是网络安全学习里必不可少的一环,简单理解php的开发环节能更好的帮助我们去学习php以及其他语言的web漏洞原理 正文 在正常的开发中,文件的功能是必不可少,比如我们在论坛的头像想更改时就涉及到文件的上传等等文件功能。但也会出…...
[文件读取]cuberite 文件读取 (CVE-2019-15516)
1.1漏洞描述 漏洞编号CVE-2019-15516漏洞类型文件上传漏洞等级⭐⭐⭐漏洞环境VULFOCUS攻击方式 描述: Cuberite是一款使用C语言编写的、轻量级、可扩展的多人游戏服务器。 Cuberite 2019-06-11之前版本中存在路径遍历漏洞。该漏洞源于网络系统或产品未能正确地过滤资源或文件路…...
SpringBoot 自定义参数校验(5)
文章目录 前言方式一 @Pattern方式二 自定义参数校验Controller层请求示例前言 本文基于SpringBoot 3.1.2,使用自定义参数规则来处理参数校验。 方式一 @Pattern 使用@Pattern,自定义正则表达式,以下是一个校验IP地址的示例: import jakarta.validation.constraints.Not…...
Win Docker Desktop + WSL2 部署PyTorch-CUDA服务至k8s算力集群
Win Docker Desktop WSL2 部署PyTorch-CUDA服务至k8s算力集群 Win Docker Desktop WSL2 安装安装WSL-Ubuntu拉取镜像并测试挂载数据并开放端口导出镜像或导入镜像在k8s集群部署 Win Docker Desktop WSL2 安装 首先根据你的操作系统版本 安装WSL ,记得切换WSL2&a…...
JLMR Micro Super Resolution Algorithm国产微超分算法DEMO
一、简介 目前,做超分算法基本还是以AI训练为主,但是AI基本上都是基于既定场景的训练。而传统的算法基本上都是利用上下文的纹理预测、插值等方案,在图像放大过程中会出现模糊,或马赛克等现象。 我们基于加权概率模型,…...
Docker的安装配置与使用
1、docker安装与启动 首先你要保证虚拟机所在的盘要有至少20G的空间,因为docker开容器很吃空间的,其次是已经安装了yum依赖 yum install -y epel-release yum install docker-io # 安装docker配置文件 /etc/sysconfig/docker chkconfig docker on # 加…...
macOS文本编辑器 BBEdit 最新 for mac
BBEdit是一款功能强大的文本编辑器,适用于Mac操作系统。它由Bare Bones Software开发,旨在为开发者和写作人员提供专业级的文本编辑工具。 以下是BBEdit的一些主要特点和功能: 多语言支持:BBEdit支持多种编程语言和标记语言&…...
Android Audio实战——音量设置Hal(二十)
本来上一篇分析音量设置中对于 setCurrentGainIndex 方法我们分析到了 native 层就没有往下分析,但这这里还有准备再看看下面的流程。 一、源码分析 1、android_media_AudioSystem.cpp 源码位置:frameworks/base/core/jni/android_media_AudioSystem.cpp static jint and…...
jetson配置笔记
typora-root-url: /home/msj/ubuntu笔记本台式机环境配置说明/images Ubuntu18.04 配置 说明:我们所有文档配置都是按照ubuntu18.04,保证x86架构(笔记本台式机)和 ARM架构(jetson Nano只能安装18.04)的一致性 1. 更换各类源 我们所有源都更换清华源&a…...
使用select实现定时任务
selectOutOfTime.c里边的代码如下: #include<stdio.h> #include<sys/time.h> #include<sys/types.h> #include<unistd.h> #include <string.h>#define BUF_SIZE 100int main(void){fd_set reads;struct timeval tv;int errorNum;cha…...
uniapp的实战总结大全
🙂博主:冰海恋雨 🙂文章核心:uniapp部分总结 目录 编辑 目录 前言: 解决方案 1. 跨平台开发 2. Vue.js生态 3. 组件库 4. 自定义组件 5. Native能力 6. 插件生态 7. 性能优化 写法 1. 模板…...
No205.精选前端面试题,享受每天的挑战和学习
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…...
保序回归:拯救你的校准曲线(APP)
保序回归:拯救你的校准曲线(APP) 校准曲线之所以是评价模型效能的重要指标是因为,校准曲线衡量模型预测概率与实际发生概率之间的一致性,它可以帮助我们了解模型的预测结果是否可信。一个理想的模型应该能够准确地预测…...
清华镜像源地址,适用于pip下载速度过慢从而导致下载失败的问题
清华地址 https://pypi.tuna.tsinghua.edu.cn/simple下载各种各样的包的指令模板 pip install XXX -i https://pypi.tuna.tsinghua.edu.cn/simple这样就行了,XXX代表的是你将要下载的包名称。 比如: pip install opencv-python -i https://pypi.tuna.…...
arcgis--NoData数据处理
方法一:利用【栅格计算器】可以对NoData的值进行修改。【Spatial Analyst工具】-【地图代数】-【栅格计算器】,将NoData修改为某一个值。 方法二:先对原始数据进行重分类,分成1类,将NoData赋值为2,。然后,将…...
基于单片机教室人数实时检测系统仿真及源程序
一、系统方案 1、本设计采用51单片机作为主控器。 2、红外传感器检测进出人数,液晶1602显示。 3、按键最多容纳人数,烟雾报警。 二、硬件设计 原理图如下: 三、单片机软件设计 1、首先是系统初始化 void lcd_init() { lcd_write_com(0x38…...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
Vite中定义@软链接
在webpack中可以直接通过符号表示src路径,但是vite中默认不可以。 如何实现: vite中提供了resolve.alias:通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...
抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
MyBatis中关于缓存的理解
MyBatis缓存 MyBatis系统当中默认定义两级缓存:一级缓存、二级缓存 默认情况下,只有一级缓存开启(sqlSession级别的缓存)二级缓存需要手动开启配置,需要局域namespace级别的缓存 一级缓存(本地缓存&#…...
