arm9开发板重新生成文件系统,并烧写

本文介绍了如何在ARM9开发板上修改文件系统,将编译后的sqlite3库文件添加到/lib目录,并通过mkcramfs生成新的.cramfs镜像文件。在遇到文件过大问题时,使用strip工具减小库文件大小,然后通过tftp烧录到开发板,最后解决运行时的库链接问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以arm9开发板为例,如果想对开发板自带的文件系统进行更改,往往要对文件系统的源文件重新修改,然后再通过mkcramfs这个工具来再把改过的源文件变成.cramfs镜像文件。

本人是在做sqlite3的时候,想把sqlite3的库文件libsqlite3.so.0.8.6写入源文件系统的/lib目录中,这样就不需要把库文件放入可读写的区域而占用过多的可读写资源。


步骤如下:


1.在光盘里找到相应的文件系统源码,对文件系统解压 

tar jxvf uptech-root.tar.bz2

注意,tar命令一定要在linux OS的文件目录下,不可以放到vm的共享文件夹下,如果是在共享文件夹下进行tar 操作,会提示tar: root/usr/bin/tftp: Cannot create symlink to `../../bin/busybox': Operation not supported 这个错误,这是因为windows和linux的目录类型不一样导致的。


2.解压完成后,会在当前目录下产生一个root的目录,cd root。里面有lib/目录。正常情况下,我们只需要将交叉编译过的sqlite3中的lib目录下的sqlite3.so.0.8.6复制到文件系统的lib下就可以了。但是,这个sqlite3.so.0.8.6往往会很大,写进去后烧写文件系统时会提示。。。too large这个错误。

解决方法,进入交叉编译过的sqlite3中的lib目录下cd /opt/sqlite3/lib 。输入命令:arm-linux-strip libsqlite3.so.0.8.6,这时会发现libsqlite3.so.0.8.6这个库比原来小了很多,这是因为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值