码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • linux下的动态静态库


    动态库与静态库

    代码编译经过几个阶段

    1、预处理(a.去注释 b.宏替换 c.头文件展开 d.条件编译)

    2、编译(c->汇编)

    3、汇编(汇编 -> 可重定向二进制目标文件)

    4、链接(链接 -> 多个.o , .obj -> 合并形成一个可执行.exe)

    而代码在链接过程中,有两种库(静态库与动态库)

    动态链接 - 动态库

    静态链接 - 静态库

    Linux:.so(动态库) , .a(静态库)

    windows:.dll(动态库),.lib(静态库)

    动态链接:将库中需要的方法的地址,直接填入可执行程序中,建立关联(节省资源)

    静态链接:将库中方法的实现,拷贝到可执行程序中(占用资源)

    linux下,gcc,g++默认形成的可执行程序是动态连接的

    假如想要生成静态链接的库

    gcc 文件 -o 想生成文件 -static        静态链接库

    linux中的静态库可能需要我们下载

    yum install -y glibc-static c语言静态库

    yum install -y libstdc++-static c++静调库

    普通用户下载不了可以在前面加sudo

  • 相关阅读:
    【node进阶】在node.js中优雅的使用Socket.IO模块
    【MySQL】MySQL操作库
    MySQL 子查询使用方式
    「造轮子」一个简单的 RPC 框架(基于Netty+Zookeeper+Spring)
    C语言:字符串函数(2)
    VMware Workstation 15 安装教程
    输电线路分布式故障监测装置:准确定位故障点、辨识故障原因
    后端程序员入门react笔记(八)-redux的使用和项目搭建
    【SA8295P 源码分析 (二)】46 - OpenWFD Server 启动流程 之 /dev/openwfd_server_0 管道事务源码分析
    多协议充电桩平台系统小程序方案
  • 原文地址:https://blog.csdn.net/qq_45358642/article/details/126687034
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号