arm-linux-gcc 4.3.2探讨2

简介: 使用busybox制作文件系统, 编译器: arm-linux-gcc 4.3.2, busybox 1.13.3,  动态编译。怎么知道都需要哪些库?有文章说用: arm-linux-readelf -d busybox | grep Shared来查看,我输入这个命令,显示: ...

使用busybox制作文件系统, 编译器: arm-linux-gcc 4.3.2, busybox 1.13.3,  动态编译。怎么知道都需要哪些库?有文章说用:

arm-linux-readelf -d busybox | grep Shared来查看,我输入这个命令,显示:

[root@Lanry bin]# arm-linux-readelf -d busybox |grep Shared

0x00000001 (NEEDED)                     Shared library: [libcrypt.so.1]

0x00000001 (NEEDED)                     Shared library: [libc.so.6]

有点不大象啊。 一是怎么可能只用到两个库, 二是 libcrypt是需要认证的程序才用到,我配置busybox时没有选到什么需要认证的啊。???????????

交叉应用程序的开发需要用到交叉编译的链接库,交叉编译的链接库是在交叉工具链的lib目录下;我们在移植应用程序到我们的目标板的时候,需要把交叉编译的链接库也一起移植到目标板上,这里我们用到的交叉工具链的路径是/usr/local/arm/3.4.1/,所以链接库的目录是/usr/local/arm/3.4.1/lib(本来跟目标板相关的目录是/usr/local/arm/3.4.1/arm-linux, 因此要拷贝的链接库应该在/usr/local/arm/3.4.1/arm-linux/lib下,但是此目录的很多链接都是链接到/usr/local/arm/3.4.1/lib目录下的库文件,所以我们从/usr/local/arm/3.4.1/lib目录拷贝库),此目录下有四种类型的文件。

实际的共享链接库

如:libc-2.3.2.so

主修订版本的符合链接

如:libc.so.2

与版本无关的符合链接(链接到主修订版本的符合链接)

如:libc.so

静态链接库包文件

如:libc.a

以上四种类型的文件,我们只需要两种:实际的共享链接库;主修订版本的符合链接,还有动态连接器及其符号链接。

#进入链接库目录

cd /usr/local/arm/3.4.1/lib

cp $file-*.so /home/rootfs/lib

cp -d $file.so.[*0-9]/jhome /rootfs/lib

cp -d ld*.so*/home /rootfs/lib

#第一个cp命令会复制实际的共享库

#第二个cp命令会复制符合链接本身

#第三个cp命令会复制动态连接器及其符合链接

在做文件系统的时候需要加载器和动态库具体操作:

cd /lib

cp *.so*  /home/rootfs/lib

相关文章
|
4天前
|
Linux
Linux(1)arm64根目录扩容
Linux(1)arm64根目录扩容
9 0
|
1月前
|
传感器 数据采集 存储
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用(一)
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用
75 0
|
1月前
|
传感器 Linux 数据处理
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用(二)
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用
46 1
|
4天前
|
Ubuntu Linux 数据安全/隐私保护
Linux(7)Ubuntu20.04 arm64安装Docker
Linux(7)Ubuntu20.04 arm64安装Docker
18 0
|
18天前
|
Linux 计算机视觉
Linux交叉编译opencv并移植ARM端
通过以上步骤,你可以在Linux上交叉编译OpenCV,并将生成的库文件和头文件移植到ARM平台上,从而在ARM上使用OpenCV。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
36 0
|
1月前
|
传感器 存储 编解码
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用(三)
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用
53 2
|
5月前
|
Linux 异构计算
HMI-66-【MeterDisplay for Arm Linux】液晶仪表Arm Linxu迁移
先说结论,虽然移植成功,但是显示效果不理想,可以直接看和面的视频。先说说做了什么吧。
HMI-66-【MeterDisplay for Arm Linux】液晶仪表Arm Linxu迁移
|
4月前
|
传感器 Linux 开发工具
Linux MQTT智能家居(ubantu和ARM中使用MQTT)
Linux MQTT智能家居(ubantu和ARM中使用MQTT)
83 0
|
5月前
|
编解码 Linux 编译器
HMI-65-【MeterDisplay for Arm Linux】液晶仪表Arm Linxu迁移环境配置
额,要开新坑了,最近这几篇都将记录下将虚拟仪表迁移到Arm Linux 开发板上面。硬件基本信息如下:
|
5月前
|
网络协议 Linux 网络安全
Linux 利用 qemu-system-aarch64 实现 x86 机器安装 arm64 的操作系统 2
Linux 利用 qemu-system-aarch64 实现 x86 机器安装 arm64 的操作系统
92 0