嵌入式开发——文件系统部署rz、sz命令

news2024/11/28 2:46:02

1、rz、sz命令源码下载

下载网址:https://ohse.de/uwe/software/lrzsz.html

2、源码编译

tar -zxvf lrzsz-0.12.20.tar.gz 
cd lrzsz-0.12.20
./configure
make CC=aarch64-mix410-linux-gcc #指定芯片平台的交叉编译链

3、源码编译遇到的问题

3.1、报错打印

在这里插入图片描述

(1)报错显示在编译sz、rz命令时还依赖libnsl.so库,当前编译时找不到libnsl库;
(2)libnsl是Unix/Linux系统下的一个开源C语言库,全称为“network services library”,提供了对许多网络服务程序的网络接口调用。其主要功能包括获取主机名、网络名称解析、套接字操作、RPC服务等;

3.2、获取libnsl库

在这里插入图片描述

(1)去网上下载libnsl库的源码,用芯片平台的交叉编译链进行编译,部署到lrzsz的编译环境中;(编译libnsl可能还会遇到问题,需要自行解决)
(2)在交叉编译链里查找是否存在libnsl库,从上面图片可知,在我使用的交叉编译链里是存在libnsl库的,其中芯片平台对应的是“/opt/aarch64-mix410-linux/target/lib/libnsl-2.31.so”;
总结:缺少的库都可以先去交叉编译链里查找是否存在该库,简单省事;

3.3、修改Makefile

#屏蔽掉原来引用libnsl的地方
#LIBS = -lnsl 
LIBS =

lsz_DEPENDENCIES +=  ../lib/libnsl.so

lrz_DEPENDENCIES =  ../lib/libnsl.so

(1)将“/opt/aarch64-mix410-linux/target/lib/libnsl-2.31.so”拷贝到编译lrzsz编译环境中,我是将其拷贝到lib目录下,重命名为libnsl.so;
(2)按照上面的代码,修改src/Makefile;

4、文件系统部署

编译完成后会在src目录下生成lsz和lrz命令,重命名成rz和sz,直接拷贝到板子文件系统的/bin、/sbin、/usr/bin、/usr/sbin等已经导出到PATH环境变量的其中一个路径即可;

5、rz、sz命令使用

5.1、设置secureCRT软件

在这里插入图片描述

(1)Windows端需要能支持Zmodem的telnet/ssh客户端,比如secureCRT;
(2)使能Zmodem,设置上传和下载的目录,将来从板子下载文件和向板子上传文件都会将文件放在对应的目录;

5.2、从板子下载文件

/var/tmp/share # sz /etc/SigFile
random: crng init done
/var/tmp/share # ./sz_cry /etc/SigFileList 
rz
  zmodem  trl+C ȡ
正在传输 SigFileList...
  100%     939   939 /0:00:01       0   

/var/tmp/share # 

(1)下载命令:sz + 需要下载的文件;
(2)文件会存放在之前设置的下载目录里;

5.3、向板子上传文件

(1)运行命令rz,secureCRT就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到当前目录,注意当前目录要有写权限;
(2)单独使用rz命令会有两个问题:上传中断、上传文件变化,解决办法是使用“rz -be”;
(3)-b:用binary的方式上传下载,不接受字符为ASCII;
(4)-e:强制escape所以控制字符,比如ctrl+x;

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

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

相关文章

绝地求生可以这样制作 (Python 版)

一、概述 1.1 效果 总的来说,这种方式是通过图像识别来完成的,不侵入游戏,不读取内存,安全不被检测。 1.2 前置知识 游戏中有各种不同的枪械,不同的枪械后坐力不一样,射速也不同。相同的枪械,…

【Java】Java(四十八):日志

文章目录 1. 概述2. 日志体系结构和Log4J3. 入门案例4. 配置文件详解 1. 概述 程序中的日志可以用来记录程序在运行的时候点点滴滴。并可以进行永久存储。 日志与输出语句的区别 2. 日志体系结构和Log4J 体系结构 Log4J Log4j是Apache的一个开源项目。 通过使用Log4j&#…

vue实现导航栏功能的方法

在 Vue中实现导航栏功能,我们可以将导航栏作为一个单独的组件来实现。这样可以方便我们进行修改、定制,并有多种方式进行添加导航栏,如使用 Vue的 document. position属性或者使用vue-dialog-position属性来添加导航栏。在此,我们…

mac os终于成功安装MySQL

目录 PART 1. 下载MySQL PART 2. 安装MySQL PART 3. 启动MySQL 大家好,我是tin,一个热爱技术喜欢折腾的开发,欢迎阅读我的重磅肝文: 1. 面试官:你给我讲一讲,Dubbo暴力停机,消费者是如何感知…

机器学习知识经验分享之六:R语言绘图之小提琴图绘制

python语言用于深度学习较为广泛,R语言用于机器学习领域中的数据预测和数据处理算法较多,后续将更多分享机器学习数据预测相关知识的分享,有需要的朋友可持续关注,有疑问可以关注后私信留言。 文章目录 一、小提琴图 二、相关代…

node、node-sass和sass-loader版本错误问题 this.getOptions is not a function

安装node-sass和sass-loader后,使用npm run dev启动项目时一直报错。网上查明原因,是因为版本问题,但是修改node-sass和sass-loader版本后,又提示说node版本不兼容,我的node版本是18。随后又尝试了很多node-sass和sass…

【STM32CubeMX项目】STM32DHT11工程文件

前言 在我的另一篇里文章里已经介绍过DHT11的时序理论了,这里介绍下,我写DHT11的数据获取的思路和调用。程序验证后,发现下述问题,暂时解决不了,但是还是会把个人的代码流程,函数的编写思路和工程写下&…

蔚来的痛苦远未结束

来源:猛兽财经 作者:猛兽财经 总结 (1)蔚来5月份的交付数据没有计入ES6的订单情况 (2)蔚来现在面临的主要问题是销售成本在不断增长,残酷的事实是,蔚来资产负债表上的现金只能维持5…

在Windows中安装极狐GitLab Runner

官方文档:https://docs.gitlab.cn/runner/install/windows.html 在Windows中安装极狐GitLab Runner 1.下载GitLab Runner二进制文件,新建一个文件夹(不要有中文),并将二进制文件放入该文件夹,重命名为“git…

django连接mysql

1.0app目录 1.pip 安装mysqlclient 2.在cmd里面新建一个django项目 3.在cmd里面新建一个app名字叫blogg 4.创建自己的数据库 django连接mysql 首建项目maneage里面setting的mysql配置 6.setting里面的installed_apps里面加上app的配置 7.app里面models模板的设置…

平面图学习

空调管道的设计:某景区有6个景点,位置分布如下图。 分析者认为:(1) A1与A4, (2) A2与A5, (3) A3与A6间人流较少,其它景点之间人流量大,必须投资铺设空调管道,但要求空调管道间不能交…

国密算法初探 | 入门教程 | 解析

国密算法即国家密码局认定的国产密码算法。 国密算法是商用密码,仅能用于商业用途。国密算法是一套标准,由国家密码局制定的规范,凡是符合的,都可以称之为国密算法。国密算法暂无官方的代码实现,企业可以自己编码实现…

用Numpy实现简单的神经网络

目录 数据预处理模型设计训练过程小批量随机梯度下降 用numpy实现神经网络对波士顿房价进行预测 假设房价和各影响因素之间能够用线性关系来描述: y ∑ j 1 M x j w j b y { \sum_{j1}^Mx_j w_j} b yj1∑M​xj​wj​b 模型的求解即是通过数据拟合出每个 w j w_…

使用思维导图做出Mybatis核心配置文件中各层及结构以及常用标签的意义和详细作用.

一、配置文件概述 Mybatis 配置文件两大类:1.Mybatis 主配置文件;2.Mybatis 的 mapper 文件 Mybatis 主配置文件: 提供 Mybatis 全局设置的。包含的内容、日志、数据源、mapper 文件位置等信息。Mybatis 的 mapper 文件: 写 sql …

linux 中的 gdb 调试方法和技巧(有截图超详细)

一、 背景 1. 程序的发布方式有两种,debug模式和release模式 2. Linux gcc/g出来的二进制程序,默认是release模式 3. 要使用gdb调试,必须在源代码生成二进制程序的时候,加上 -g 选项 如下图: 不加 -g 默认是 relea…

【Java】快速排序

文章目录 一、什么是快速排序二、基准元素的选择1、选择第一个元素2、随机选择 三、元素的交换1、双边循环法2、单边循环法 一、什么是快速排序 快速排序是由冒泡排序演变而来,比冒泡排序更快的排序算法。之所以快,是因为快速排序用了分治法。 相同的是…

基于均值方差最优化资产配置的模型特性

摘要及声明 1:本文主要利用实际数据进行检验,从定量角度分析均值方差最优化的特性; 2:本文主要为理念的讲解,模型也是笔者自建,文中假设与观点是基于笔者对模型及数据的一孔之见,若有不同见解…

Linux最小安装网络配置、jdk安装以及虚拟机克隆的操作(超详细过程)

一、最小安装配置网络 1、配置文件: 进入“/etc/sysconfig/network-scripts”目录,查看当前目录下的“ifcfg-ens33”文件 对“ens33”文件进行配置 2、重启网络: 使用“systemctl restart network”命令即可 3、ping网络,如果…

【Proteus仿真】51单片机+步进电机驱动

【Proteus仿真】51单片机步进电机驱动 🔖Proteus仿真基础实验-步进电机驱动🌿Proteus8.12平台 📋步进电机简介 步进电机是一种将电脉冲转换为角位移的开环控制元步进电机。一般地,当步进驱动器接收到脉冲信号时,它将根…

企业邮箱购买指南:分享如何购买适合企业的企业邮箱

如果你想为你的公司设立一个新的公司邮箱帐户,有几种不同的选择可供选择。根据公司的规模和需求,你可以从邮箱托管公司购买一个邮箱地址,购买域名并创建一个自定义邮箱地址,或者与第三方提供商合作。无论您选择哪种方法&#xff0…