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

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;

推荐

给大家推荐一个学校嵌入式知识的网站,博主在大学时候学习嵌入式知识、找工作的时候都在用这个网站,网站里有C语言、Linux等等的笔试题、面试常问问题等等知识,无论是学习基础知识、面试刷题、交流工作经验都是不错的选择。大家一起进步,欢迎留言交流。
链接:学习神器跳转
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

正在起飞的蜗牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值