1、rz、sz命令源碼下載
下載網(wǎng)址: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系統(tǒng)下的一個開源C語言庫,全稱為“network services library”,提供了對許多網(wǎng)絡服務程序的網(wǎng)絡接口調用。其主要功能包括獲取主機名、網(wǎng)絡名稱解析、套接字操作、RPC服務等;
3.2、獲取libnsl庫
(1)去網(wǎng)上下載libnsl庫的源碼,用芯片平臺的交叉編譯鏈進行編譯,部署到lrzsz的編譯環(huán)境中;(編譯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編譯環(huán)境中,我是將其拷貝到lib目錄下,重命名為libnsl.so;
(2)按照上面的代碼,修改src/Makefile;
4、文件系統(tǒng)部署
編譯完成后會在src目錄下生成lsz和lrz命令,重命名成rz和sz,直接拷貝到板子文件系統(tǒng)的/bin、/sbin、/usr/bin、/usr/sbin等已經(jīng)導出到PATH環(huán)境變量的其中一個路徑即可;
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.zghlxwxcb.cn/news/detail-470784.html
推薦
給大家推薦一個學校嵌入式知識的網(wǎng)站,博主在大學時候學習嵌入式知識、找工作的時候都在用這個網(wǎng)站,網(wǎng)站里有C語言、Linux等等的筆試題、面試常問問題等等知識,無論是學習基礎知識、面試刷題、交流工作經(jīng)驗都是不錯的選擇。大家一起進步,歡迎留言交流。
鏈接:學習神器跳轉文章來源地址http://www.zghlxwxcb.cn/news/detail-470784.html
到了這里,關于嵌入式開發(fā)——文件系統(tǒng)部署rz、sz命令的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!