View library dependency on PC Linux
You can directly use the ldd command to view executable programs, such:
Root @ forlinx :~ # Ldd/bin/mv
Linux-gate.so.1 => (0x00c7b000)
Libselinux. so.1 =>/lib/i386-linux-gnu/libselinux. so.1 (0x00136000)
Librt. so.1 =>/lib/i386-linux-gnu/librt. so.1 (0x00ada000)
Libacl. so.1 =>/lib/i386-linux-gnu/libacl. so.1 (0x00fac000)
Libattr. so.1 =>/lib/i386-linux-gnu/libattr. so.1 (0x005ae000)
Libc. so.6 =>/lib/i386-linux-gnu/libc. so.6 (0x00151000)
Libdl. so.2 =>/lib/i386-linux-gnu/libdl. so.2 (0x006b1000)
/Lib/ld-linux.so.2 (0x00578000)
Libpthread. so.0 =>/lib/i386-linux-gnu/libpthread. so.0 (0x00302000)
Root @ forlinx :~ #
You can also view the dynamic library, for example:
Root @ forlinx :~ # Ldd/lib/libcrypto. so.0.9.8
Linux-gate.so.1 => (0x00a88000)
Libdl. so.2 =>/lib/i386-linux-gnu/libdl. so.2 (0x00d04000)
Libz. so.1 =>/lib/i386-linux-gnu/libz. so.1 (0x001b9000)
Libc. so.6 =>/lib/i386-linux-gnu/libc. so.6 (0x001ce000)
/Lib/ld-linux.so.2 (0x00886000)
View the cross-compiled executable programs or library file dependencies on the embedded platform.
Run the following command on PC Linux:Arm-Linux-readelf-a "your binary" | grep "shared"
For example, to view binary executable files:
Root @ forlinx :~ # Arm-Linux-readelf-a "/mnt/Linux/FileSystem-Yaffs2/bin/ls" | grep "shared"
0x00000001 (needed) Shared Library: [libm. so.6]
0x00000001 (needed) Shared Library: [libc. so.6]
View dynamic library files:
Root @ forlinx :~ # Arm-Linux-readelf-a "/mnt/Linux/FileSystem-Yaffs2/lib/libresolv. so.2" | grep "shared"
Type: DYN (Shared object file)
0x00000001 (NEEDED) Shared library: [libc. so.6]
Root @ forlinx :~ #