0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

动态库和静态库的制作步骤

麦辣鸡腿堡 来源:嵌入式Linux系统开发 作者:嵌入式Linux系统开 2023-07-27 11:00 次阅读

库是一种可执行的二进制文件,是编译好的代码。使用库可以提高开发效率。在 Linux 下有静态库和动态库。

静态库在程序编译的时候会被链接到目标代码里面。所以程序在运行的时候不再需要静态库了。因此编译出来的体积就比较大。以 lib 开头,以.a 结尾。

动态库(动态库也叫共享库)在程序编译的时候不会被链接到目标代码里面,而是在程序运行的时候被载入的。所以程序在运行的时候需要动态库了。因此编译出来的体积就比较小。以 lib 开头,以.so 结尾。

静态库的制作步骤:

编写或准备库的源代码

将源码.c 文件编译生成.o 文件

使用 ar 命令创建静态库

测试库文件

动态库制作步骤:

编写或准备库的源代码

将源码.c 文件编译生成.o 文件

使用 gcc 命令创建动态库

测试库文件

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11216

    浏览量

    208808
  • 静态库
    +关注

    关注

    0

    文章

    21

    浏览量

    7419
收藏 人收藏

    评论

    相关推荐

    Linux下动态相关知识

    Linux 下有动态和静态动态以.so为扩展名,静态
    的头像 发表于 11-07 09:23 553次阅读
    Linux下<b class='flag-5'>动态</b><b class='flag-5'>库</b>相关知识

    动态和静态的区别

    .so区分一个概念:是包含前缀lib以及后缀.a或者.so的一个整体名是去掉前缀和后缀剩下的部分四、动态和静态
    发表于 05-26 17:22

    Linux下动态和静态制作及使用

    一看都清楚明了。(2)ldd命令看动态,如果目标程序没有链接动态,则打印“not a dynamic executable” (不是动态
    发表于 11-18 17:05

    Linux下静态动态制作与使用

    什么是静态函数库动态函数库又是什么?linux静态函数库是怎样创建并使用的?动态函数库是怎样创建并使用的?
    发表于 04-26 06:45

    应用程序所依赖的动态和静态没有调试信息的原因

    的原因可能有这么几个:应用程序在编译时没有指定-g选项,导致可执行程序没有调试信息。应用程序所依赖的动态和静态没有调试信息。应用程序的运行时环境没有调试信息,比如libc等。嵌入式
    发表于 11-05 06:41

    静态动态的相关知识

    静态动态笔记系列嵌入式系统方向学习笔记1嵌入式系统方向学习笔记2文章目录静态
    发表于 12-22 07:49

    静态动态的使用

    就比较小。以 lib 开头,以.so 结尾。静态制作步骤:编写或准备的源代码将源码.c 文件编译生成.o 文件使用 ar 命令创建
    发表于 05-04 14:08

    Linux下静态动态(共享)的制作与使用

    Linux下静态动态(共享)的制作与使用Linux
    发表于 07-09 14:39 1148次阅读

    动态链接不为人知的秘密

    Linux 下有动态和静态动态以.so为扩展名,静态
    的头像 发表于 05-04 14:33 3561次阅读
    <b class='flag-5'>动态</b>链接<b class='flag-5'>库</b>不为人知的秘密

    讲解Linux虚拟机之使用动态和静态

    了解 Linux 如何使用,包括静态动态的差别,有助于你解决依赖问题。
    发表于 05-06 17:05 2153次阅读
    讲解Linux虚拟机之使用<b class='flag-5'>动态</b><b class='flag-5'>库</b><b class='flag-5'>和静态</b><b class='flag-5'>库</b>

    嵌入式Linux下动态和静态使用

    以下主要介绍Linux 下动态静态、如何使用已有的动态, 以及如何
    发表于 11-01 16:57 1次下载
    嵌入式Linux下<b class='flag-5'>动态</b><b class='flag-5'>库</b><b class='flag-5'>和静态</b><b class='flag-5'>库</b>使用

    Linux下动态和静态制作与调用

    静态是指在应用中,有一些公共代码需要反复使用,就把这些代码编译为“”文件;在链接步骤中,连接器将从文件取得所需的代码,复制到生成的可执
    的头像 发表于 08-24 15:03 3686次阅读
    Linux下<b class='flag-5'>动态</b><b class='flag-5'>库</b><b class='flag-5'>和静态</b><b class='flag-5'>库</b><b class='flag-5'>制作</b>与调用

    谈一下动态的构建

    在编译程序时,使用动态链接和静态是一致的,使用”-l名”的方式,在生成可执行文件的时候会链接
    的头像 发表于 01-18 11:13 852次阅读
    谈一下<b class='flag-5'>动态</b><b class='flag-5'>库</b>的构建

    C语言动态静态

    C语言动态静态
    的头像 发表于 02-06 09:45 1332次阅读

    静态链接和静态

    所谓静态链接,就是把实现的代码整合到最终的二进制文件中,这样的二进制文件会比较大,因为里面既包含了自己写的代码,又包含了调用的的代码。
    的头像 发表于 02-08 14:17 841次阅读