1、下載busybox源碼
什么是交叉編譯,busybox官方地址:https://busybox.net/
這里示例所下載的版本是 busybox-1.32.0.tar.bz2
2、解壓源碼并進行配置
busybox提供了幾種配置:defconfig(缺省配置)、allyesconfig(最大配置)、allnoconfig(最小配置),一般選擇缺省配置即可:
# tar xvf busybox-1.32.0.tar.bz2
# cd busybox-1.32.0/
# make defconfig
完成后,還可輸入make menuconfig以圖形化的方式對配置進行調整,這里不過多說明。
3、添加交叉編譯工具鏈路徑到環境變量
例如我的交叉編譯工具鏈的路徑是:
/home/share/toolchains/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/
那么執行:
# export PATH=$PATH:/home/share/toolchains/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin
4、使用交叉編譯工具進行編譯
例如我的gcc編譯工具名稱是 aarch64-linux-gnu-gcc,則執行:
# make CROSS_COMPILE=aarch64-linux-gnu-
5、編譯完成,檢查文件類型
編譯完成后,在當前文件夾下生成busybox文件,同時保留了未stripped的版本busybox_unstripped;
查看busybox文件信息,為64位小端arm版本:
# file busybox
busybox: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=02e7acdb21accf4ae54855defa47d93a512c7beb, stripped
6、將生成的busybox上傳到板子上測試
可以使用scp、ftp、lrzsz、tftp等命令,能把文件傳到嵌入式設備上就行;
例如使用tftp,PC(IP:10.5.1.86)開啟tftpd程序后,在嵌入式設備獲取busybox文件并添加執行權限:
# tftp -g -r busybox 10.5.1.86
# chmod +x busybox
一是執行busybox后面緊跟對應命令,例如:
# ./busybox pwd
/tmp
二是拷貝busybox成命令名稱,直接執行,例如:
# cp busybox pwd
# ./pwd
/tmp
三是創建到busybox的軟連接(推薦),例如:
# ln -s busybox pwd
# ./pwd
/tmp
7、查看busybox用法及支持命令列表
# ./busybox --help
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态