linux下交叉编译licensecc
本文章只做个人笔记用
下载地址:
#https://github.com/open-license-manager/licensecc.git
#下面地址下不下来就是用第一个去官网下载git clone --recursive https://github.com/open-license-manager/licensecc.git
编译前准备3个库:openssl,lcc-license-generator ,zlib-1.3.1
这个库需要用到openssl的版本是1.0.0以上,因为版本太低里面的函数没有。编译这个库之前需要编译boost,之前写过编译boots。下载lcc-license-generator 库
https://github.com/open-license-manager/lcc-license-generator.git
1.默认openssl zlib库编译没问题。开始编译lcc-license-generator:指定安装路径;制定boost路径,指定交叉编译器路径
cd lcc-license-generator-develop/build
cmake .. -DCMAKE_INSTALL_PREFIX=../install -DCMAKE_TOOLCHAIN_FILE=/home/t113_tq.cmake -DBOOST_ROOT=/home/boost_1_78_0
make
make install
编译结果如下,至此lcc-license-generator编译完成。
axx@axx:/home/code/axx/project_5g_unit/conference/thirdpart/lcc-license-generator-develop/build$ cmake .. -DCMAKE_INSTALL_PREFIX=../install -DCMAKE_TOOLCHAIN_FILE=/home/code/axx/project_5g_unit/conference/thirdpart/t113_tq.cmake -DBOOST_ROOT=/home/code/axx/project_5g_unit/conference/thirdpart/boost_1_78_0
-- Found openssl version 1.1.1 - generator
CMake Warning at /opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:102 (find_package)CMake Warning at /opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:102 (find_package)CMake Warning at /opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:102 (find_package)CMake Warning at /opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:102 (find_package)CMake Warning at /opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1187 (message):New Boost version may have incorrect or missing dependencies and importedtargets
Call Stack (most recent call first):/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1311 (_Boost_COMPONENT_DEPENDENCIES)/opt/cmake-3.18.0/share/cmake-3.18/Modules/FindBoost.cmake:1919 (_Boost_MISSING_DEPENDENCIES)CMakeLists.txt:102 (find_package)-- CXX compiler : /usr/bin/c++
-- CXX compiler flags :
-- CXX compiler flags debug : -g
-- CXX compiler flags release: -O3 -DNDEBUG
-- Install prefix : /home/code/lixd/project_5g_unit/conference/thirdpart/lcc-license-generator-develop/install
-- External libs : -lpthread
-- Exporting current build directory
CMake Warning at src/license_generator/CMakeLists.txt:36 (export):Cannot create package registry file:/home/swan/.cmake/packages/lccgen/0a279ca82ac3ae27827040e8592103adNo such file or directory-- Configuring done
-- Generating done
-- Build files have been written to: /home/code/axx/project_5g_unit/conference/thirdpart/lcc-license-generator-develop/build
2.编译licensecc
cd licensecc
rm -rf ./build
mkdir build
cd buildMyDIR="/home/code/axx/lib"echo "Enter a number between 1 and 2 to select Compilation toolchain"
echo " 1 :gcc "
case $num in1) echo "You entered 1" cmake \.. \-DCMAKE_TOOLCHAIN_FILE=../t113_tq.cmake \-DCMAKE_INSTALL_PREFIX=$MyDIR/build_t113 \-DBOOST_ROOT=/home/code/axx/project_5g_unit/conference/thirdpart/boost_1_78_0 \;; *)echo "Invalid number";;
esac
make
make install
在使用 CMake 配置 Licensecc 时,可以通过 -DLCC_PROJECT_NAME=<YourProjectName> 指定你的项目名称。这将创建一个以项目名称命名的文件夹,在 licensecc/projects/ 目录下,并包含项目的私钥和公钥
t113_tq.cmake 内容如下:
set (CMAKE_CXX_STANDARD 11)
set (CMAKE_CXX_STANDARD_REQUIRED True)
SET (CMAKE_SYSTEM_NAME Linux)
SET (CMAKE_SYSTEM_PROCESSOR arm)
SET (CMAKE_SYSTEM_VERSION 1)
SET (CMAKE_C_FLAGS "-I/home/sdk/t113_tq/TQT113_linux_V2.0/out/toolchain/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabi/arm-linux-gnueabi/libc/usr/include")
SET (CMAKE_C_COMPILER /home/sdk/t113_tq/TQT113_linux_V2.0/out/toolchain/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc)
SET (CMAKE_CXX_COMPILER /home/sdk/t113_tq/TQT113_linux_V2.0/out/toolchain/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-g++)
SET (CMAKE_FIND_ROOT_PATH /home/sdk/t113_tq/TQT113_linux_V2.0/out/toolchain/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabi)
SET (STAGING_DIR /home/sdk/t113_tq/TQT113_linux_V2.0/out/toolchain/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabi/bin)SET (OPENSSL_ROOT_DIR /home/code/axx/project_5g_unit/conference/lib/build_t113)
SET (OPENSSL_CRYPTO_LIBRARY /home/code/axx/project_5g_unit/conference/lib/build_t113/lib)
SET (OPENSSL_INCLUDE_DIR /home/code/axx/project_5g_unit/conference/lib/build_t113/include)
SET (OPENSSL_SSL_LIBRARY /home/code/axx/project_5g_unit/conference/lib/build_t113/lib)#using for licensecc
include_directories(/home/sdk/t113_tq/TQT113_linux_V2.0/out/t113/evb1_auto/buildroot/buildroot/host/arm-buildroot-linux-gnueabi/sysroot/usr/include)
SET (ZLIB_LIBRARY /home/code/axx/project_5g_unit/conference/lib/build_t113/lib)
SET (ZLIB_INCLUDE_DIR /home/code/axx/project_5g_unit/conference/lib/build_t113/include)SET (lccgen_DIR /home/code/axx/project_5g_unit/conference/thirdpart/lcc-license-generator-develop/build)
SET (Boost_INCLUDE_DIR /home/code/axx/project_5g_unit/conference/thirdpart/boost_1_78_0/install/include)
SET (Boost_LIBRARY /home/code/axx/project_5g_unit/conference/thirdpart/boost_1_78_0/install/lib)#using for licensecc
执行2的编译脚本即可完成编译。
相关文章:
linux下交叉编译licensecc
本文章只做个人笔记用 下载地址: #https://github.com/open-license-manager/licensecc.git #下面地址下不下来就是用第一个去官网下载git clone --recursive https://github.com/open-license-manager/licensecc.git 编译前准备3个库:openssl&#x…...
模型剪枝综述
目录 1 深度神经网络的稀疏性: 2 剪枝算法分类: 3 具体的剪枝方法包括: 4 剪枝算法流程: 5 几种常见的剪枝算法: 6 结构化剪枝和非结构化剪枝各有其优缺点: 7 剪枝算法对模型精度的影响 8 影响剪枝…...
破解监控难题,局域网电脑监控软件哪家强?
现在的环境,企业要想茁壮成长,员工的高效工作那可是关键中的关键。但不少老板都发现了一个头疼的问题,员工上班老是偷懒,这可怎么行?今天,就来给大家详细说道说道几款出色的局域网电脑监控软件,…...
Linux--Socket编程TCP
前文:Socket套接字编程 TCP的特点 面向连接:TCP 在发送数据之前,必须先建立连接。可靠性:TCP 提供了数据传输的可靠性。面向字节流:TCP 是一个面向字节流的协议,这意味着 TCP 将应用程序交下来的数据看成是…...
Android Studio导入源码
在有源码并且编译环境可用的情况下: 1.生成导入AS所需的配置文件 在源码的根目录执行以下命令: source build/ensetup.sh lunch 要编译的项目 make idegen //这一步会生成out/host/linux-x86/framework/idegen.jar development/tools/idegen/idegen.sh…...
UE5 UE4 使用python进行编辑器操作
使用UE 4.25以上版本后,python代码改动相对较少。 如下类库在4.20/21/22等早起版本不适用,建议查询UE的python文档 unreal.EditorAssetLibrary 1.获取当前选中的资源(Content中) # 获取当前选中的资产selected_assets unreal.E…...
区块链技术在智能城市中的创新应用探索
随着全球城市化进程的加速和信息技术的快速发展,智能城市成为了未来城市发展的重要方向。在智能城市建设中,区块链技术作为一种去中心化、安全和透明的分布式账本技术,正逐渐展现出其在优化城市管理、提升公共服务和增强城市安全性方面的潜力…...
解决mysql事件调度器重启服务后自动失效的问题
前段时间为通过mysql事件生成测试数据,今天发现数据在10:57后停止了CREATE EVENT IF NOT EXISTS insert_random_data ON SCHEDULE EVERY 10 SECOND DO INSERT INTO test (createtime, random_number) VALUES (NOW(), FLOOR(RAND() * 100));检查事件状态&#…...
mybatis开启二级缓存
例子 mybatis-config.xml <configuration><settings><setting name"cacheEnabled" value"true"/></settings><environments default"development"><environment id"development"><transacti…...
Oracle大型数据库管理(一)Oracle大型数据库管理全面指南
文章目录 Oracle大型数据库管理全面指南引言1. Oracle数据库概述1.1 什么是Oracle数据库1.2 Oracle数据库的主要特点 2. Oracle数据库部署2.1 安装前的准备工作2.1.1 操作系统要求2.1.2 硬件要求2.1.3 软件环境要求 2.2 Oracle数据库的安装2.2.1 用户和目录的创建2.2.2 安装Ora…...
Arcgis中查找空间距离范围内字段相等的数据
背景 目前有两份空间点数据,需要通过点数据1查找100米空间距离范围内点数据2中与点数据1某个字段相同的数据 步骤 1、arcgis中加载数据 2、空间连接 结果,从下面这两个字段可以看出,点数据1在100米空间距离范围内有多个点数据2 3、选择数…...
js中map属性
JavaScript中的Map对象保存键值对,并且能够记住键的原始插入顺序 以下是关于如何在JavaScript中使用Map对象的博客文章概要: 一、创建和初始化Map对象 使用new Map()构造函数可以创建一个新的Map对象。你还可以在构造函数中传入一个可迭代对象&#x…...
CS224W—03 GNN
CS224W—03 GNN 回顾 快速回顾一下上一讲的内容。我们学到的关键概念是节点嵌入(Node Embedding)。我们的直觉是将网络中的节点编码到低维向量空间中。我们希望学习一个接受输入图的函数 f f f,并将其嵌入到低维节点嵌入空间中。在这里&am…...
库存超卖问题解决方式
文章目录 超卖问题解决方式什么是库存超卖问题?乐观锁和悲观锁的定义超卖问题解决方式一、悲观锁1.jvm单机锁2.通过使用mysql的行锁,使用一个sql解决并发访问问题3.使用mysql的悲观锁解决4. 使用redis分布式锁来解决 二、乐观锁解决1.版本号2. CAS法&…...
30岁决心转行,AI太香了
今天是一篇老学员的经历分享,此时的王同学在大洋彼岸即将毕业,手握多家北美大厂offer,一片明媚。谁能想到王同学的转码之路竟始于一场裁员,这场访谈拉开了他的回忆。 最近总刷到一些关于转行的话题,很多刚毕业的同学喜…...
C#知识|文件与目录操作:目录的操作
哈喽,你好啊,我是雷工! 前边学习了文件的删除、复制、移动,接下来学习目录的操作。 以下为学习笔记。 01 效果演示 1.1、显示指定目录下的所有文件 在左侧的文本框中显示出F:\F004-C#目录下的所有文件, 演示效果: 1.2、显示指定目录下的所有子文件 在左侧的文本框中显…...
从零到一:用Go语言构建你的第一个Web服务
使用Go语言从零开始搭建一个Web服务,包括环境搭建、路由处理、中间件使用、JSON和表单数据处理等关键步骤,提供丰富的代码示例。 关注TechLead,复旦博士,分享云服务领域全维度开发技术。拥有10年互联网服务架构、AI产品研发经验、…...
塔子哥的环游之旅-腾讯2023笔试(codefun2000)
题目链接 塔子哥的环游之旅-腾讯2023笔试(codefun2000) 题目内容 塔子哥是一位热衷旅游的程序员。他所在的国家共有 n 个城市,编号从 1 到 n。这些城市之间有 m 条双向的交通线路,分别为飞机线路和火车线路。塔子哥起始位于编号为 1 的城市,他计划前往编号为 n 的城市进行旅游…...
力扣SQL50 换座位
Problem: 626. 换座位 👨🏫 参考题解 Code SELECT(CASEWHEN MOD(id, 2) ! 0 AND counts ! id THEN id 1WHEN MOD(id, 2) ! 0 AND counts id THEN idELSE id - 1END) AS id,student FROMseat,(SELECTCOUNT(*) AS countsFROMseat) AS seat_counts O…...
SOPHGO算能科技BM1684芯片修改内存布局
目录 1 问题由来 2 下载memory_edit工具 3 查看当前内存配置 3 修改内存布局 4 替换生效 参考文献: 1 问题由来 我在算能SE5盒子上开发的时候,明显感觉很慢,然后看了下cpu内存竟然只有2.6G 但是这个盒子出厂默认是12G的,于…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)
可以使用Sqliteviz这个网站免费编写sql语句,它能够让用户直接在浏览器内练习SQL的语法,不需要安装任何软件。 链接如下: sqliteviz 注意: 在转写SQL语法时,关键字之间有一个特定的顺序,这个顺序会影响到…...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
redis和redission的区别
Redis 和 Redisson 是两个密切相关但又本质不同的技术,它们扮演着完全不同的角色: Redis: 内存数据库/数据结构存储 本质: 它是一个开源的、高性能的、基于内存的 键值存储数据库。它也可以将数据持久化到磁盘。 核心功能: 提供丰…...
【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解
一、前言 在HarmonyOS 5的应用开发模型中,featureAbility是旧版FA模型(Feature Ability)的用法,Stage模型已采用全新的应用架构,推荐使用组件化的上下文获取方式,而非依赖featureAbility。 FA大概是API7之…...
土建施工员考试:建筑施工技术重点知识有哪些?
《管理实务》是土建施工员考试中侧重实操应用与管理能力的科目,核心考查施工组织、质量安全、进度成本等现场管理要点。以下是结合考试大纲与高频考点整理的重点内容,附学习方向和应试技巧: 一、施工组织与进度管理 核心目标: 规…...
