手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

LINUX动态链接库高级应用

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
(2)当所用的动态链接库在系统目录(/lib,/usr/lib)以外的目录时,须用编译选项-L来指定动态链接库所在的目录(供编译器查找用),同时用-l选项指定缩写的动态链接库名.即:
# cc -L/usr/zzz/lib -lmy -o ady ady.c
#
(3)直接引用所需的动态链接库.即:
# cc -o ady ady.c libmy.so
#
# cc -o ady ady.c /lib/libmy.so
#
等等.其中,动态链接库的库名能够采用相对路径形式(文档名不以/开头),也可采用绝对路径形式(文档名以/开头).
五、动态链接程式的运行和检查
5.1 运行
编译连接好含动态函数的程式后,就能够运行他了.动态链接程式因为共享了系统中的动态链接库,所以其空间占用很小.但这并不意味功能的减少,他的执行和静态连接的程式执行,效果完全相同.在命令提示符下键入程式名及相关参数后回车即可,如下例:
$ ady
动态链接库高级应用示范
当前日期: 2002-03-11
当前时间: 19:39:06
$
5.2 检查
检查什么?检查动态链接程式究竟需要哪些共享库,系统中是否已有这些库,没有的话,用户好想办法把这些库装上.
怎么检查呢?这里,告诉您一个实用程式--ldd,这个程式就是专门用来检查动态链接程式依赖哪些共享库的.
ldd命令行用法如下:
ldd [--version] [-v|--verbose] [-d|--data-relocs] [-r|--function-relocs] [--help] FILE...
各选项说明如下:
(1) --version : 此选项用于打印出ldd的版本号.
(2) -v 或 --verbose : 此选项指示ldd输出关于所依赖的动态链接库的尽可能周详的信息.
(3) -d 或 --data-relocs : 此选项执行重定位,并且显示不存在的函数.
(4) -r 或 --function-relocs : 此选项执行数据对象和函数的重定位,同时报告不存在的对象.

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!