动静态库的制作和使用
一、库库本质上是多个.o文件的集合库就相当于真正的生产车间比如你用的stdio.h这个头文件他就相当于使用说明书。二、静态库的制作与使用2.1 简单制作.a 就是linux中的静态库 就是多个.o文件的集合体ar -rc lib库名.a *.o2.2 使用将需要的头文件使用说明书和.a库拷贝到friend文件夹中gcc -o 可执行文件名字 main.o -l库名 -L./-l 指明库的名字告诉gcc -L 库路径在哪2.3 易错库不能包含main函数2.4 Makefile方法制作静态库1 libmystdio.a:mystdio.o mystring.o 2 ar -rc $ $^ 3 %.o:%.c 4 gcc -c $ 5 6 .PHONY:clean 7 clean: 8 rm -rf *.o *.a mylib 9 .PHONY:output 10 output: 11 mkdir -p mylib 12 mkdir -p mylib/include 13 mkdir -p mylib/lib 14 cp *.h mylib/include 15 cp *.a mylib/libmake之后再 make output这时候我们生成了一个mylib的文件夹 文件夹中include是头文件 lib就是我们生成的库2.5 如何使用该库2.5.1安装到系统中拷贝软链接也可以这样就可以运行了删掉之后就找不到了就失败了2.5.2 使用选项 随意链接任意的库因为我们将系统中删掉了该库和头文件所以是找不到的所以我们编译的时候要去指定头文件在哪这样形成main的可执行文件需要去指定头文件在哪用-I 同时用-L去指定库在哪 -l库的名字三、动态库的打包和使用同时用Makefile也可以1 libmystdio.so:mystdio.o mystring.o 2 gcc -shared -o $ $^ 3 %.o:%.c 4 gcc -fPIC -c $ 5 6 .PHONY:clean 7 clean: 8 rm -rf *.o *.so mylib 9 .PHONY:output 10 output: 11 mkdir -p mylib 12 mkdir -p mylib/include 13 mkdir -p mylib/lib 14 cp *.h mylib/include 15 cp *.so mylib/lib细节形成动态库不用ar而是继续使用gcc/g动态库上面的使用和静态库一样 但是运行的时候并没有成功 我们ldd这个发现燃事故 not found但是我们上述已经告诉gcc了那为什么找不到呢运行这个程序的时候是操作系统加载器找不到但是我们写的时候是告诉了gcc运行程序的时候和gcc没有任何关系了第一种解决方法将库拷贝到系统中lib64中下第二种做法使用软链接第三种做法通过环境变量通过LD_LIBRARY_PATH这个环境变量第四种做法ldconfig方案四、混淆1 如果我给的mylib的lib中既有.a又有.so那优先是动态链接2 如果给的是静态库 没有加-static 只有这个库是静态链接其他的还是动态链接3 如果加了-static 所有库都要用静态连接

相关新闻

Hyperledger Fabric部署运维实战:从环境准备到故障排查全解析

Hyperledger Fabric部署运维实战:从环境准备到故障排查全解析

1. 赛题解析:从“部署与运维”看区块链技术实战能力要求拿到这个赛题,很多同学的第一反应可能是去翻手册、背命令。但如果你只停留在这一步,那可能就错过了国赛题目设计的真正意图。全国职业院校技能大赛的区块链赛项,尤其是国赛级…

2026/8/25 0:38:08 阅读更多 →
注意啦!!2026年(下半年)工程专业技术职称水平能力测试考试通知已出

注意啦!!2026年(下半年)工程专业技术职称水平能力测试考试通知已出

一、东湖高新区2026年(下半年)工程专业技术职称水平能力测试时间:⏰时间:2026年8月30日(周日)🚀准考证打印时间:2026年8月24日12:00至8月30日上午8:30二、东湖高新区2026年&#xff…

2026/8/22 17:30:01 阅读更多 →
5 步搞定 nvidia_gpu_exporter:GPU 监控从部署到 Grafana 告警

5 步搞定 nvidia_gpu_exporter:GPU 监控从部署到 Grafana 告警

5 步搞定 nvidia_gpu_exporter:GPU 监控从部署到 Grafana 告警 【免费下载链接】nvidia_gpu_exporter Nvidia GPU exporter for prometheus using nvidia-smi binary OR using NVML 项目地址: https://gitcode.com/gh_mirrors/nv/nvidia_gpu_exporter nvidia…

2026/8/25 4:51:54 阅读更多 →

最新新闻

基于OpenClaw与OneBot协议构建QQ群AI智能体:从部署到技能调用的全流程实践

基于OpenClaw与OneBot协议构建QQ群AI智能体:从部署到技能调用的全流程实践

1. 项目概述:当OpenClaw遇见QQ,一个AI智能体的新舞台最近在折腾AI智能体,发现了一个挺有意思的开源项目叫OpenClaw,社区里也有人叫它“小龙虾”。这玩意儿本质上是一个AI智能体框架,你可以把它理解成一个“大脑”&…

2026/8/25 10:42:48 阅读更多 →
OpenClaw智能体框架与QQ机器人集成:构建AI驱动的社群自动化助手

OpenClaw智能体框架与QQ机器人集成:构建AI驱动的社群自动化助手

1. 项目概述:当OpenClaw遇见QQ机器人最近在折腾智能助手本地化部署的朋友,估计没少听说OpenClaw(小龙虾)这个名字。它本质上是一个开源的、可扩展的智能体(Agent)框架,核心目标是把大语言模型&a…

2026/8/25 10:42:48 阅读更多 →
一份契约描述30多种数据源:ODCS服务器配置实战(Kafka、Snowflake、PostgreSQL等)

一份契约描述30多种数据源:ODCS服务器配置实战(Kafka、Snowflake、PostgreSQL等)

一份契约描述30多种数据源:ODCS服务器配置实战(Kafka、Snowflake、PostgreSQL等) 【免费下载链接】open-data-contract-standard Home of the Open Data Contract Standard (ODCS). 项目地址: https://gitcode.com/gh_mirrors/op/open-data…

2026/8/25 10:42:48 阅读更多 →
Real-ESRGAN vs ESRGAN vs GFPGAN:3款主流AI图像超分工具横评与选型指南

Real-ESRGAN vs ESRGAN vs GFPGAN:3款主流AI图像超分工具横评与选型指南

Real-ESRGAN vs ESRGAN vs GFPGAN:3款主流AI图像超分工具横评与选型指南 【免费下载链接】Real-ESRGAN PyTorch implementation of Real-ESRGAN model 项目地址: https://gitcode.com/gh_mirrors/rea/Real-ESRGAN 想找一款好用的 AI图像超分 方案?…

2026/8/25 10:42:48 阅读更多 →
Mapbox React Examples 基础篇:用 useRef + useEffect 两步法在 React 中正确初始化并销毁 Mapbox 地图

Mapbox React Examples 基础篇:用 useRef + useEffect 两步法在 React 中正确初始化并销毁 Mapbox 地图

Mapbox React Examples 基础篇:用 useRef useEffect 两步法在 React 中正确初始化并销毁 Mapbox 地图 【免费下载链接】mapbox-react-examples Example patterns for building React apps with Mapbox GL JS 项目地址: https://gitcode.com/gh_mirrors/ma/mapbox…

2026/8/25 10:42:48 阅读更多 →
告别手写正则删注释:为什么strip-json-comments才是处理JSONC的唯一正确选择

告别手写正则删注释:为什么strip-json-comments才是处理JSONC的唯一正确选择

告别手写正则删注释:为什么strip-json-comments才是处理JSONC的唯一正确选择 【免费下载链接】strip-json-comments Strip comments from JSON. Lets you use comments in your JSON files! 项目地址: https://gitcode.com/gh_mirrors/st/strip-json-comments strip-jso…

2026/8/25 10:41:46 阅读更多 →

日新闻

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

2026/8/25 0:00:34 阅读更多 →
Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG 【免费下载链接】transformers.js State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server! 项目地址: https:/…

2026/8/25 0:00:34 阅读更多 →
数学建模竞赛论文写作指南:从模型构建到学术表达的核心技能

数学建模竞赛论文写作指南:从模型构建到学术表达的核心技能

1. 项目概述:从“会做”到“会写”的竞赛核心跃迁“全国大学生数学建模竞赛”,这个名字对理工科学生来说,分量极重。每年,无数团队在三天三夜的时间里,为一个开放性问题绞尽脑汁,从建立模型、求解算法到编程…

2026/8/25 0:00:34 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/25 3:38:12 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/25 3:38:18 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/25 3:38:23 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/24 20:22:44 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/25 10:31:12 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/24 11:20:22 阅读更多 →