|
getlib脚本的用法如下:
getlib SOUREFILE DESPATH
SOUREFILE 一个文本文件,此文本文件的每一行都为一个可执行文件的路径
DESPATH 需要建立的目录名
此脚本的作用是将SOUREFILE的每一行的文件所依赖的库(由ldd得到的)拷贝到DESPATH中,如果所依赖的库是一个连接要把它的连接也拷贝过来
。
譬如,在我的redhat9.0中有一个/filelist的文本文件里面有两行:
/bin/cp
/bin/ls
当执行完 "getlib /filelist /tmplib"之后,脚本应该干以下几件事:
1.建立/tmplib目录
2.建立/tmplib/lib目录
3.建立/tmplib/lib/tls目录
3.拷贝/lib/tls/libc.so.6(/bin/cp所依赖的库)到/tmplib/lib/tls中
拷贝/lib/tls/libc-2.3.2.so(因为/lib/tls/libc.so.6连接到/lib/tls/libc-2.3.2.so)到/tmplib/lib/tls中
拷贝/lib/libtermcap.so.2(/bin/ls所依赖的库)到/tmplib/lib中
拷贝/lib/libtermcap.so.2.8(因为libtermcap.so.2连接到libtermcap.so.2.8)到/tmplib/lib中
拷贝/lib/ldlinux.so.2(/bin/ls,/bin/cp所依赖的库)到/tmplib/lib中
拷贝/lib/libtermcap-2.3.2.so(因为/lib/ldlinux.so.2连接到/lib/libtermcap-2.3.2.so)到/tmplib/lib中
不知道我说清楚没有,哪位高手帮帮忙! |
|