【conan】本地编译三方库,上传conan服务器

news2024/11/24 9:06:11

在这里插入图片描述

1.6 conan

远程已经编译好的库

conan中文博客:
三方库资源:
github conan-io

本地查询

 conan search 
Existing package recipes:

b2/4.9.6
boost/1.71.0@nolovr/stable
bzip2/1.0.8
ceres-solver/2.0.0@nolovr/stable
eigen/3.3.7@nolovr/stable
eigen_checks/master@nolovr/stable

本地编译

首先修改 ‘/home/sun/.conan/profiles/default’ 文档,编辑配置如下;

[settings]
arch=x86_64
build_type=Release
compiler=clang
compiler.libcxx=libstdc++11
compiler.version=9
os=Linux
[build_requires]
[options]
[env]
CC=/usr/bin/clang-9
CXX=/usr/bin/clang++-9

执行下面命令,开始编译:
找到onetbb_nlvr 文件包含conanfile.py 在上一层文件打开 执行下面命令,conan自动寻找 .py 开始本地编译onetbb库。

conan create . --build=missing

commands资料

$ conan create [-h] [-j JSON] [-k] [-kb] [-ne] [-tbf TEST_BUILD_FOLDER]
                [-tf TEST_FOLDER] [--ignore-dirty] [--build-require]
                [--require-override REQUIRE_OVERRIDE] [-m [MANIFESTS]]
                [-mi [MANIFESTS_INTERACTIVE]] [-v [VERIFY]] [-b [BUILD]]
                [-r REMOTE] [-u] [-l LOCKFILE]
                [--lockfile-out LOCKFILE_OUT] [-e ENV_HOST]
                [-e:b ENV_BUILD] [-e:h ENV_HOST] [-o OPTIONS_HOST]
                [-o:b OPTIONS_BUILD] [-o:h OPTIONS_HOST]
                [-pr PROFILE_HOST] [-pr:b PROFILE_BUILD]
                [-pr:h PROFILE_HOST] [-s SETTINGS_HOST]
                [-s:b SETTINGS_BUILD] [-s:h SETTINGS_HOST]
                [-c CONF_HOST] [-c:b CONF_BUILD] [-c:h CONF_HOST]
                path [reference]

根据cnakelists.txt中添加的三方库选项去匹配本地库,cmkaelists如下所是:


#conan config
if (CMAKE_SYSTEM_NAME MATCHES "Linux")
    set(CMAKE_C_COMPILER "clang-9")
    set(CMAKE_CXX_COMPILER "clang++-9")
    set(CMAKE_CXX_FLAGS "-Wall --std=c++17 -fPIC -march=native -D_LINUX -D_REENTRANT")
    set(CONAN_PROFILE ../conan_cmake/conan_profiles/linux.profile)
elseif (CMAKE_SYSTEM_NAME MATCHES "Android")
    set(CMAKE_CXX_FLAGS "-Wall --std=c++17 -fPIC")
    set(CONAN_PROFILE ../conan_cmake/conan_profiles/arm.profile)
else ()
    message("not support this platform")
endif ()

project(polaris C CXX ASM)

include(conan_cmake/conan.cmake)
set(ENV{CONAN_REVISIONS_ENABLED} 1)
conan_add_remote(NAME nolovr
        INDEX 0
        URL http://server ip:server port/artifactory/api/conan/nlvr
        VERIFY_SSL TRUE)
conan_cmake_run(
        PROFILE ${CONAN_PROFILE}
        REQUIRES eigen/3.3.7@nolovr/stable
        eigen_checks/master@nolovr/stable
        REQUIRES opencv/3.4.17@nolovr/stable
        REQUIRES onetbb/2021.3.0@nolovr/stable
        REQUIRES kindr/master@nolovr/stable
        REQUIRES eigen_checks/master@nolovr/stable
        BASIC_SETUP CMAKE_TARGETS
        SETTINGS build_type=Release
        BUILD missing
)
conan_global_flags()

add_compile_definitions(COMMIT_ID="${COMMIT_ID}")
set(TIGER_DOES_EXIST_IN_MOUNTAIN TRUE)
add_definitions(-DTIGER_DOES_EXIST_IN_MOUNTAIN)
# end conan config

本地上传

实例:

conan upload onetbb/2021.3.0@nlvr/stable --all -r nlvr
$ conan upload [-h] [-p PACKAGE] [-q QUERY] [-r REMOTE] [--all]
               [--skip-upload] [--force] [--check] [-c] [--retry RETRY]
               [--retry-wait RETRY_WAIT] [-no [{all,recipe}]] [-j JSON]
               [--parallel]
               pattern_or_reference

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

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

相关文章

pdf转换成word怎么转换?简单快捷方法分享

pdf转换成word怎么转换?需要将PDF文档转换为Word文档,以便更好地编辑和修改文本内容。比如,当你需要对一份PDF文档中的内容进行修改、编辑或者格式化时,你可以先将其转换为Word文档,再进行修改。这样可以更快速、更便捷…

【数据结构与算法】哈夫曼编码(最优二叉树实现

哈夫曼编码 等长编码:占的位置一样 变长编码(不等长编码):经常使用的编码比较短,不常用的比较短 最优:总长度最短 最优的要求:占用空间尽可能短,不占用多余空间,且不…

4.BIO多线程即时通信

highlight: arduino-light 基于BIO模式下的即时通信,我们需要解决客户端到客户端的通信,也就是需要实现客户端与客户端的端口消息转发逻辑。 功能清单 1.客户端登陆功能 可以启动客户端进行登录,客户端登陆只需要输入用户名和服务端ip地址即可…

JVM理论(五)执行引擎--解释器/JIT编译器

概述 首先执行引擎是java虚拟机核心的组成部分之一;而JVM的主要任务是装载字节码到内存,但不能够直接运行在操作系统之上.因为字节码指令并非等价于本地机器指令,它仅仅包含能够被JVM所识别的指令、符号表、以及其他信息;而此时执行引擎就华丽登场,它的任务就是将字节码指令解…

欧姆龙PLC联网

一、设备信息确认 左上角的为PLC型号,如图该PLC型号为CP1H,不同型号的欧姆龙PLC通讯方面有什么差别呢? 通讯能力和方式不同: 有些型号PLC自带网口,有些则需要扩展(上图中右侧的两个红框内为后扩展的通讯口,扩展模块可以随意组合双网口,双232串口,双485串口都可以)…

D354周赛复盘:特殊元素平方和+数组最大美丽值(滑动窗口)+合法分割最小下标

文章目录 6889.特殊元素平方和思路完整版取模注意:不能对0取余/取模解答错误:本题的数组最后一个下标是nums[nums.size()] 6929.数组的最大美丽值(排序滑动窗口)思路1:排序滑动窗口注意点 6927. 合法分割的最小下标&am…

My_window类(带有next和quit按钮)

运行代码: //My_window类(带有next和quit按钮) #include"std_lib_facilities.h" #include"GUI/Simple_window.h" #include"GUI/GUI.h" #include"GUI/Graph.h" #include"GUI/Point.h"//--…

为什么项目可见性难以实现?该如何提高?

在项目和专业服务管理中,失败有时难以避免。沟通不足和需求定义不明确被认为是造成失败的最大原因,这意味着项目可见性和信息流动至关重要。 什么是项目可见性? 项目可见性是组织项目相关信息的方式,以便所有团队成员、项目经理…

火狐安卓版支持油猴了!后面将支持更多扩展插件

日前火狐浏览器每夜构建版的安卓版已经带来了更多扩展程序支持,这其中就包括大名鼎鼎的油猴扩展程序。本次火狐浏览器每夜构建版更新新增五款扩展程序支持,并且按照谋智基金会说法还会支持更多的扩展程序。 下载地址:https://ftp.mozilla.org…

力扣 406. 根据身高重建队列

题目来源:https://leetcode.cn/problems/queue-reconstruction-by-height/description/ C题解1:分别对h和k两个维度进行考虑,我这里是优先考虑k值,k值相同的时候h小的排前面。然后再一一遍历,对于people[i]&#xff0c…

曲师大2023大一新生排位赛-D.Factor题解

D.Factor 题目描述 你有一个集合 ,和具有 个正整数的数组 . 最初,集合 为空(不包含任一元素)。你将按照以下方式填充集合 : 以此枚举数组 a 中的每个元素。对于数组中的第 i 个元素 ,生成 ​ 的因子集合 ​。如果…

uniapp引入echarts

作为前端在开发需求的时候经常会遇到将数据展示为图表的需求,之前一直用的HBuilder的图表插件uCharts,使用方法可以参考我的另一篇博客:uniapp 中使用图表(秋云uCharts图表组件) 但是最近发现uCharts很多功能都需要付…

国密算法概述、及算法的集成应用(sm2、sm3、sm4)

国密算法概述、及算法的集成应用(sm2、sm3、sm4) 一、概述二、分类概述3.1、SM1对称密码3.2、SM2椭圆曲线公钥密码算法3.3、SM3杂凑算法3.4、SM4对称算法3.5、SM7对称密码3.6、SM9标识密码算法3.7、ZUC祖冲之算法 三、集成SM2加解密四、集成SM3加密、验签…

系统学习Linux-Rsync远程数据同步服务(三)

一、概述 rsync是linux 下一个远程数据同步工具 他可通过LAN/WAN快速同步多台主机间的文件和目录,并适当利用rsync 算法减少数据的传输 会对比两个文件的不同部分,传输差异部分,因此传输速度相当快 rsync可拷贝、显示目录属性&#xff0c…

将TXT转化为PDF的方法有哪些,分享四个给大家!

将TXT文本文件转换为PDF是一项常见的需求,特别是在需要共享文档时。在本文中,我们将分享四种方法,让您能够轻松地将TXT文件转换为PDF格式。 方法一:使用记灵在线工具 记灵在线工具是一个方便易用的在线文档转换工具,…

日撸java三百行day77-79

文章目录 说明GUI1. GUI 总体布局2. GUI 代码理解2.1 对话框相关控件2.1.1 ApplicationShowdown.java(关闭应用程序)2.1.2 DialogCloser.java(关闭对话框)2.1.3 ErrorDialog.java(显示错误信息)2.1.4 HelpD…

C++基础算法离散化及区间合并篇

📟作者主页:慢热的陕西人 🌴专栏链接:C算法 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 主要讲解了双指针,位运算,离散化以及区间合并。…

店铺记账用什么软件好?应该如何选购?

店铺记账过程中,会遇到各种问题:手写记账容易出错、效率低下、数据容易丢失;手动整理数据导致实际库存和账面库存不匹配,影响补货和订单管理。 而借助专业的店铺记账软件,可以有效解决上面这些问题,通过自动…

51单片机学习--矩阵键盘、电子密码锁

矩阵键盘的模块原理图&#xff1a; 功能&#xff1a;按下矩阵按键&#xff0c;在LCD上显示对应的数值。 采用模块化编程&#xff0c;在此只给出MatrixKey.c 和 main.c 两部分代码 #include <REGX52.H> #include "Delay.h"/*矩阵键盘读取键码按下不放&#xf…

K8S集群内部署Rancher2.5.16

K8S集群内部署Rancher2.5.16 一、环境 k8s&#xff1a;1.18.20 OS&#xff1a;Anolis OS 7.9 rancher&#xff1a;2.5.16 参考官网部署文档&#xff1a;https://ranchermanager.docs.rancher.com/zh/v2.6/pages-for-subheaders/install-upgrade-on-a-kubernetes-cluster 二…