【T690 之十二】基于方寸EVB2开发板(T690芯片)构建基于GMSSL的文件系统的方式

news2024/12/25 1:46:59

备注:
1,假设您已对方寸微电子的T690系列芯片的使用方式都有了一定的了解,然后需要构建基于GMSSL的文件系统,此文才对您有意义;
2,若您对方寸微电子的T690芯片不了解,但想进一步了解它,那您可以在gitee上获取相关资料,gitee的网址为:https://gitee.com/tihchip

1. 编译GMSSL

  编译gmssl.bb时,不能直接直接执行命令bitbake gmssl,虽然执行该命令时能编译成功(没有任何的错误),当时将编译生成的文件复制到文件系统(rootfs)后,执行 可执行程序(testapp) 时,会提示OPENSSL_1_1_1及OPENSSL_1_1_0找不到,如下:
在这里插入图片描述
在这里插入图片描述
  造成该问题的主要原因:猜测是GMSSL与OpenSSL版本差异,很多软件依赖OpenSSL,但是我采用了GMSSL直接替代OpenSSL的方式,导致依赖关系出现了混乱。

  解决办法:

  1. 将gmssl.bb中的全部内容复制到openssl.bb中去,然后编译openssl(bitbake openssl),这样外壳是OpenSSL,但实际编译的内容为GMSSL(实现了挂羊头卖狗肉的效果);
  2. 将编译成功的文件复制到文件系统中;
  3. 再次执行 ldd /usr/bin/testapp 时,就可以正确的显示依赖关系了;
root@t690mp-evb2-va: MACHINE=t690mp-evb2-va bitbake openssl -c cleanall	--> 清空编译环境
root@t690mp-evb2-va: MACHINE=t690mp-evb2-va bitbake openssl			    --> 重新编译openssl
root@t690mp-evb2-va: cp -rf /localhdd/jack/tmp-glibc/work/riscv64-tih-linux/openssl/1.1.1q-r0/image/* /share/samba/public/shared/jack/rootfs/				                    --> 将编译生成的文件复制到文件系统中

2. 编译CCAT

root@t690mp-evb2-va:  MACHINE=t690mp-evb2-va bitbake ccat -c cleanall	--> 清空编译环境
root@t690mp-evb2-va:  MACHINE=t690mp-evb2-va bitbake ccat			    --> 重新编译ccat
root@t690mp-evb2-va:  cp -rf /localhdd/jack/tmp-glibc/work/t690mp_evb2_va-tih-linux/ccat/1.0-r0/image/* /share/samba/public/shared/jack/rootfs/             		            --> 将编译生成的文件复制到文件系统中

3. 编译Engine

  采用GMSSL替代了OpenSSL的形式,那么ccat-engine.bb也必须做如下相应的修改才行:
在这里插入图片描述

root@t690mp-evb2-va: MACHINE=t690mp-evb2-va bitbake ccat-engine -c cleanall	--> 清空编译环境
root@t690mp-evb2-va: MACHINE=t690mp-evb2-va bitbake ccat-engine				--> 重新编译engine
root@t690mp-evb2-va: cp -rf /localhdd/jack/tmp-glibc/work/riscv64-tih-linux/ccat-engine/1.0-r0/image/* /share/samba/public/shared/jack/rootfs/					                    --> 将生成的文件复制到文件系统中

4. 编译文件系统(rootfs)

为什么需要重编文件系统?啥时候需要重编文件系统?
1)当采用网络挂载(NFS)的时候,不需要重编文件系统,只需将新编译的openssl、ccat、engine等文件复制到文件系统中即可(毕竟文件系统是在服务器上呢,没在开发板上,只需使用linux命令cp完成复制即可);
2)当文件系统是烧写到了SD卡或者eMMC中时,则需要重编文件系统,然后将新生成的文件系统重新烧写到SD卡或者eMMC。
  为什么此种情况需要重编文件系统?
  那是因为我们若想将新编译的gmssl的文件复制到文件系统中,那必须使用linux的scp命令,而该命令在使用的过程中会调用算法相关的,这导致了openssl的部分内容无法被替换。

编译文件系统前需要做的工作:
在gitee上拉取最新的gmssl_2.5.4.bb,然后将该文件内容完全复制到openssl_1.1.1q.bb中。

编译命令

root@t690mp-evb2-va: MACHINE=t690mp-evb2-va bitbake tih-full-cli-image -c cleanall
root@t690mp-evb2-va: MACHINE=t690mp-evb2-va bitbake tih-full-cli-image

5. 测试

  1. 将文件系统烧写到eMMC或者SD卡中,并启动linux;
  2. 启动完成之后,打开文件 c1xxx_dev0.conf (命令:vi /etc/c1xxx_dev0.conf),做如下修改:

新发布的CCAT,默认已经是中断模式,即Cy0CorePolled的默认值已经是2,此种情况下,就不需要再执行该步骤了

在这里插入图片描述
4. 执行命令:/etc/init.d/qat_service start

在这里插入图片描述
6. 性能测试的命令:
硬算法:openssl speed -evp sms4-cbc -async_jobs 1 -elapsed -engine ccatengine
软算法:openssl speed -evp sms4-cbc -async_jobs 1 -elapsed
在这里插入图片描述
7. ccat-engine中的测试demo的运行方式
在这里插入图片描述
以 sm4_ecb 为例:
硬算法:testapp -engine ccatengine -v sm4_ecb
软算法:testapp -v sm4_ecb

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

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

相关文章

Modbus入门

Modbus入门 ModbusModbus模拟工具模拟工具使用配置Slave配置Poll C#使用ModBus通讯 Modbus modbus使用范围广泛,广泛应用于各类仪表,PLC等。它属于应用层协议,底层硬件基于485/以太网。 Modbus的存储区有:输入线圈(布尔…

[Day1]工业网络智能控制:三层交换机与防火墙

基础知识点 什么是内网? 内网就是我们平常说的局域网。局域网就是在固定的一个地理区域内由2台以上的电脑用网线和其他网络设备搭建而成的一个封闭的计算机组。它可以是邻居之间的2台电脑,也可以是一幢100层大楼里的1000台电脑。局域网可以是独立封闭运行的&…

CSS 显示、定位、布局、浮动

一、CSS 显示: CSS display属性设置元素应如何显示;CSS visibility属性指定元素应可见还是隐藏。隐藏元素可以通过display属性设置为“none”,也可以通过visibility属性设置为“hidden”。两者的区别:visibility:hidden可以隐藏某…

七个很实用的开源项目「GitHub 热点速览」

本周特推的两个项目都是异常实用的项目,一个接棒上周的视频重制项目 video-retalking 这次则是直接将视频替换成另外一个语种;另外一个则是解决日志阅读问题的 tailspin,让你在成千上万条日志中快速定位特定的日志。 此外,还有两大…

从零开始搭建微服务(二)

忘记了软件还没有装全,今天先把所有的软件装上,nacos已经装过了我们就不在装了,剩余的软件全部都是通过docker安装,我在centos7里面 1. 安装docker 安装dockeryum -y install docker开机自启 systemctl enable docker启动dockre systemctl start docker查看docker版本 doc…

公司加入域的电脑关闭登陆密码

公司电脑一般会统一加入公司内部的域,同时基于安全等原因,屏幕保护和桌面密码不能自己个性化设置,因此一会儿不进行操作就会被锁定,使用时还需要重新输入密码,这种情况可以通过修改注册表来解决。 同时按winr键&#x…

ONNX相关

https://github.com/open-mmlab/mmdeploy/blob/master/docs/zh_cn/tutorial/03_pytorch2onnx.md TorchScript 解读(一):初识 TorchScript - 知乎 onnx算子文档 https://github.com/onnx/onnx/blob/main/docs/Operators.mdhttps://github.com…

电子水表和智能水表哪个好?

随着科技的不断发展,传统的水表已经逐渐无法满足人们对于用水管理的需求。于是,电子水表和智能水表应运而生。这两种水表在功能和性能上都有一定的优势,但究竟哪个更好呢?今天小编将为大家全面解析电子水表和智能水表的优劣&#…

【广州华锐互动】气象卫星监测AR互动教学软件为气象学习带来更多乐趣

由VR制作公司广州华锐互动开发的气象卫星监测AR互动教学软件是一款结合了增强现实(AR)技术与气象监测技术的教育软件。它通过直观、互动的方式,帮助学生更好地理解和掌握气象监测的基本知识和技能。本文将从气象卫星监测AR互动教学软件的应用场景、优势分析、实际意…

Vue2+elementui项目导出el-table的数据为xlsx表格

1、安装3个插件 (file-saver、 xlsx、script-loader) npm install -S file-saver xlsxnpm install -D script-loader 2、在utils目录下新建一个 Export2Excel.js 脚本 (我的路径在/utils/Export2Excel.js) /* eslint-disable *…

Vue动手实践p110和p107小试牛刀

一、小试牛刀 真的很不好意思诸位&#xff0c;最近事情有点多&#xff0c;更新进度缓慢了&#xff0c;这次就简单的再复习一下vue组件的内容&#xff0c;大家可以自行研究一下&#xff0c;我就不深入解析了。 <body> <div id"app"><button click&qu…

vr航天探索科普展vr航天科普亲子嘉年华

随着生活水平的提高&#xff0c;人们的体验事物也在变多&#xff0c;学习方面也越来越多元化。现在我国的航天技术也在快速的发展&#xff0c;在宇宙太空中有我们的一席之位。航天大发展离不开每个航天人的努力。现在很多的人从娃娃做起&#xff0c;让他们更早的体验和了解外太…

YOLOv8优化:block系列篇 | Neck系列篇 |可重参化EfficientRepBiPAN优化Neck

🚀🚀🚀本文改进: 可重参化EfficientRepBiPAN优化Neck 如何在YOLOv8下使用:1)结合neck; 🚀🚀🚀EfficientRepBiPAN在各个领域都有ying 🚀🚀🚀YOLOv8改进专栏:http://t.csdnimg.cn/hGhVK 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研; 1.原理…

最新Cocos Creator 3.x 如何动态修改3D物体的透明度

Cocos Creator 3.x 的2D UI有个组件UIOpacity组件可以动态修改UI的透明度,非常方便。很多同学想3D物体上也有一个这样的组件来动态的控制与修改3D物体的透明度。今天基于Cocos Creator 3.8 来实现一个可以动态修改3D物体透明度的组件Opacity3D。 对啦&#xff01;这里有个游戏…

OkHttpClient实例

以下是OkHttpClient的一个简单用法示例&#xff1a; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException;public class Main {public static void main(String[] args) {OkHttpClient client new OkHttpClient();Re…

将全连接层替换为卷积层的意义(CNN和FCN)

全连接层&#xff1a;CNN 将特征整合&#xff0c;用于分类&#xff0c;在图像中具体化为知道图像中有猫&#xff0c;但是不知道猫在哪儿。 在传统CNN中&#xff0c;输入是唯一确定大小的。因为全连接层要求输入是固定的。 全卷积网络&#xff1a;FCN 不仅可以用来分类&…

2023年化工自动化控制仪表证考试题库及化工自动化控制仪表试题解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年化工自动化控制仪表证考试题库及化工自动化控制仪表试题解析是安全生产模拟考试一点通结合&#xff08;安监局&#xff09;特种作业人员操作证考试大纲和&#xff08;质检局&#xff09;特种设备作业人员上岗证…

无人零售奶柜:革新牛奶购买体验

无人零售奶柜&#xff1a;革新牛奶购买体验 无人零售奶柜的投放地点覆盖了社区、写字楼等靠近居民的场所&#xff0c;大大提升了消费者购买牛奶的体验。这一创新不仅令消费者能够享受到与电商平台相媲美的直供价格优势&#xff0c;还让他们能够购买更多、更丰富的知名品牌牛奶。…

左手 Jira,右手 Polarion,驶入互联网和制造业十字路口的新能源汽车

笔者之前一直在互联网公司从事软件研发&#xff0c;创立 Bytebase 之后&#xff0c;才开始接触到各行各业的用户。最近来自汽车行业的客户不少&#xff0c;所以就翻翻相关资料。周末微信收到了一条推送&#xff0c;提到汽车行业的软件研发管理&#xff0c;也由此了解到了 Polar…

c语言从入门到实战——操作符详解

操作符详解 前言1. 操作符的分类2. 二进制和进制转换2.1 2进制转10进制2.1.1 10进制转2进制数字 2.2 2进制转8进制和16进制2.2.1 2进制转8进制2.2.2 2进制转16进制 3. 原码、反码、补码4. 移位操作符4.1 左移操作符4.2 右移操作符 5. 位操作符&#xff1a;&、|、^、~6. 单目…