当前位置: 技术问答>linux和unix
万分火急!动态编译busybox
来源: 互联网 发布时间:2016-11-07
本文导语: busybox版本:1.15.2 交叉编译器:ELDK 4.1 静态编译busybox,制作根文件系统后,板子能启动; 而动态编译busybox,制作根文件系统后,板子不能启动 最后启动信息: VFS: Mounted root (ext2 filesystem). Freeing unused kernel memory:...
busybox版本:1.15.2
交叉编译器:ELDK 4.1
静态编译busybox,制作根文件系统后,板子能启动;
而动态编译busybox,制作根文件系统后,板子不能启动
最后启动信息:
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 92k init
Kernel panic - not syncing: No init found. Try passing init= option to kernel.
Rebooting in 1 seconds..
查看busybox用到的库
[root@bogon busybox-1.15.2]# readelf -a busybox|grep "Shared library"
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libc.so.6]
都已经把eldk/ppc_4xx/lib下的*.so *.so.[*0-9] ld*.so*拷贝到文件系统/lib下了,
还是不能启动,
在本论坛看到篇现象一样的帖子《动态编译busybox ,板子不能启动,求助》提到:
用readelf工具查看工具链中的m库和c库等文件,interpreter(ld-linux.so)路径不对,在nfsroot下建立/opt/xxx 把lib放这级目录下就正确了。
不明白怎么“用readelf工具查看工具链中的m库和c库等文件”。
各位遇到类似问题的请赐教,万分火急,拜谢了!
交叉编译器:ELDK 4.1
静态编译busybox,制作根文件系统后,板子能启动;
而动态编译busybox,制作根文件系统后,板子不能启动
最后启动信息:
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 92k init
Kernel panic - not syncing: No init found. Try passing init= option to kernel.
Rebooting in 1 seconds..
查看busybox用到的库
[root@bogon busybox-1.15.2]# readelf -a busybox|grep "Shared library"
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libc.so.6]
都已经把eldk/ppc_4xx/lib下的*.so *.so.[*0-9] ld*.so*拷贝到文件系统/lib下了,
还是不能启动,
在本论坛看到篇现象一样的帖子《动态编译busybox ,板子不能启动,求助》提到:
用readelf工具查看工具链中的m库和c库等文件,interpreter(ld-linux.so)路径不对,在nfsroot下建立/opt/xxx 把lib放这级目录下就正确了。
不明白怎么“用readelf工具查看工具链中的m库和c库等文件”。
各位遇到类似问题的请赐教,万分火急,拜谢了!
|
readelf就是你前面用到的那个命令呀
交叉编译,因此用类似如下的命令
arm-linux-readelf -a busybox | grep "Shared"
不过这种方式没有列出加载器,需要将加载器也复制进根文件系统即ld-linux.so.2
交叉编译,因此用类似如下的命令
arm-linux-readelf -a busybox | grep "Shared"
不过这种方式没有列出加载器,需要将加载器也复制进根文件系统即ld-linux.so.2
|
eldk没用过
看你看你的描述不像是缺库文件,你看看linuxrc等是不是可执行的
看你看你的描述不像是缺库文件,你看看linuxrc等是不是可执行的
|
参数没有配置对吧
|
我也估计是参数不对。