PCB抄板专家世纪芯官方网站——PCB抄板网 首页公司介绍资讯中心案例展示服务推荐常见问题联系我们 24小时客服热线:+86-0755-83035861/83035836

PCB抄板网世纪芯电子产品仿制开发技术服务门户 > 资料下载 > 正文

深圳pcb抄板Linux操作系统下动态库的生成和使用

2012年06月01日09:37

    1.动态链接库是程序运行时加载的库,当动态链接库正确安装后,所有的程序都可以使用动态库来运行程序。动态链接库是目标文件的集合,目标文件在动态链接库中的组织方式是按照特殊方式形成的。库中函数和变量的地址是相对地址,不是绝对地址,其真实地址在调用动态库的程序加载时形成。
    2.动态链接库的名称有别名(soname), 真名(realname)和链接名(linker name)。别名由一个前缀lib,然后是库的名字,再加上一个后缀“。so”构成。真名是动态链接库真实名称,一般总是在别名的基础加上一个小版本号,pcb抄板发布版本等构成。除此之外,还有一个链接名,即程序链接时使用的库的名字。
    3.在动态链接库安装的时候,总是复制文件到某个目录下,然后用一个软连接生成别名,在库文件进行更新的时候,仅仅更新软链接即可。
    二。生成和使用动态库
    1.看一个实例来了解如何自己生成静态库和使用静态库
    创建程序文件
    1>在test文件夹下有三个文件: main.c ,add.c,sub.c,tiger.h
    2> main.c文件中的内容:
    #include
    #include“tiger.h”
    int main(void)
    {
    printf(“sum =%d\n”,add(5,3));
    printf(“sub= %d\n”,sub(5,3));
    return 0;
    }
    3>.tiger.h文件中的内容:
    #ifndef __TIGER__
    #define __TIGER__
    int add(int a,int b);
    int sub(int a,int b);
    #endif
    4>.add.c文件中的内容
    int add(int a, int b)
    {
    return a +b;
    }
    5>.sub.c文件中的内容
    int sub(int a, int b)
    {
    return a - b;
    }
&nb

在线询价/咨询服务

24小时服务热线:18923830090

全国咨询热线:0755-83346939

走进世纪芯

世纪芯是一支由众多技术研发专家和科研企业结盟组成了技术服务型团队,自组建以来一直帮助政府、知名科研机构以及国内众多抄板企业攻克技术难题,10年来,我们专注反向技术研究并不断挑战大型疑难项目,目前已经成为国内抄板企业的中流砥柱。