C语言混合链接

第 1 步:把 sb.c 编译成目标文件 sb.o

复制代码
gcc -c sb.c -o sb.o
  • -c:只编译、不链接,

    第 2 步:用 sb.o 生成静态库 libsb.a

    复制代码
    ar crv libsb.a sb.o

    输出目标文件 sb.o,对应教程里的 hello.o

第 3 步:删除同目录的动态库(可选但建议做)

复制代码
  rm -f libsb.so

和教程说的完全一致:如果同一个目录下同时存在 libsb.a(静态)和 libsb.so(动态),gcc 链接时默认优先选动态库 。 删掉 libsb.so 可以确保接下来链接的一定是静态库。
*

第 4 步:生成可执行文件 main1(这一步就是混合链接)

复制代码
  gcc main.c -L. -lsb -o main1
相关推荐
@yanyu6664 小时前
C编译器安装与第一个C程序
c语言·开发语言
山下梅子酒2254 小时前
洛谷-入门-B2070
c语言
Logic1014 小时前
C语言/数据结构位运算题解:异或XOR找出多任务下载器中的“独特下载速度“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
MI_farmer6 小时前
Anaconda 安装在 D 盘但虚拟环境跑到 C 盘,以及 Conda PermissionError: WinError 5 的解决方法
c语言·开发语言·conda
心中有你02148 小时前
C语言 二叉搜索树(BST)超详细完整实现(插入+查找+删除+三种遍历+内存释放)
c语言
神仙别闹8 小时前
基于C语言实现 TINY+ 编译器
c语言·开发语言·数据库
共享家95279 小时前
C语言-408
c语言·开发语言
ACP广源盛1392462567311 小时前
接口适配方案选型|GSV6125@ACP HDMI2.0 转 Type‑C/DP1.4 桥接芯片工程评估
大数据·c语言·开发语言·硬件架构·硬件工程·国产芯片
芯祥联14 小时前
STM32 上跑 MQTT 怎么选?嵌入式 MQTT 客户端 C 语言实现对比
c语言·stm32·单片机·嵌入式硬件·网络协议·开源·broker
Escalating_xu1 天前
【C 语言】深入理解指针(1·下):指针运算、野指针、assert 与传址实战
java·c语言·开发语言