Linux高并发服务器开发(一)GCC和Make

news2024/9/21 8:03:44

文章目录

  • 1 工作流程
  • 2 静态库和动态库连接
    • 2.1 静态连接
    • 2.2 动态链接
  • 3 静态库制作和使用
  • 4 动态库的制作和使用
  • 5 GDB 调试器
  • 6 Makefile


1 工作流程

在这里插入图片描述
在这里插入图片描述
第一步预处理,生成.i
第二部生成汇编文件.s
第三部生成目标代码.o
第四部生成可执行文件

2 静态库和动态库连接

2.1 静态连接

静态连接:由链接器在链接时将库的内容加入到可执行程序中
优点:对运行环境依赖性较小,具有较好的兼容性。
缺点:生成程序比较大,需要更多的系统资源,在装入内存时会消耗更多的时间。
库函数需要更新,必须重新编译。

2.2 动态链接

动态链接:链接器在链接时仅仅建立所需库函数的之间的链接关系,在程序运行的时候才将所需资源调入。
优点:在需要的时候才会调入
简化程序的升级,有较小的程序体积
实现进程之间的资源共享
缺点:
依赖动态库,不能独立运行
动态库依赖版本问题严重

3 静态库制作和使用

add.h
在这里插入图片描述

add.c
在这里插入图片描述
sub.h
在这里插入图片描述
在这里插入图片描述
创建test.c
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

程序没有问题
制作静态库
在这里插入图片描述
在这里插入图片描述
打包
在这里插入图片描述
打包
在这里插入图片描述
链接库
在这里插入图片描述
在这里插入图片描述

4 动态库的制作和使用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5 GDB 调试器

在这里插入图片描述
这样编译有调试信息
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

n

6 Makefile

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1858220.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

充电桩---特斯拉NACS接口介绍

一、NACS接口发展 NACS是由特斯拉内部开发的,作为交流和直流充电的专有充电解决方案。2022年11月11日,特斯拉在官网上开放了自家的充电接口设计,并将特斯拉充电接口更名为NACS(North American Charging Standard)&…

Python列表比较:判断两个列表是否相等的多种方法

📖 正文 1 通过排序的方式实现判断 list_a [a, b, c, d] list_b [c, d, a, b]if sorted(list_a) sorted(list_b):print(list_a与list_b的元素相等) else:print(list_a与list_b的元素不相等)通过排序,让两组列表中元素一直后进行判断,得到…

LONGHEADS:无需训练的多头注意力长文本处理框架

大模型(LLMs)在处理海量文本数据时展现出了前所未有的能力。然而这些模型在面对超出其训练时所见序列长度的长文本时存在两个主要问题:一是模型对于超出预训练长度的文本难以有效泛化,二是注意力机制的二次方时间复杂度导致计算成…

Marin说PCB之如何在CST仿真软件中添加三端子的电容模型?--02

小编我在上期文章的结尾给大家留下一个小问题就是:在三端子电容创建模型中间的部分我有说了一句就是:(其中有一个creat reference pin 设置我们也默认不勾选),这个勾选不勾选有啥区别呢?这期文章就来给大家…

『 Linux 』 进程间通信 - 匿名管道 (万字)

文章目录 什么是管道匿名管道的直接原理pipe( )系统调用接口匿名管道代码示例匿名管道的特征总结 什么是管道 管道(Pipe) 是一种基本的进程间通信(IPC)机制,允许一个进程与另一个进程之间进行数据传输; 管道工作方式类似于生活中的水管因此命名为管道,数据从一端流入另一段流出…

学习笔记——动态路由——RIP(距离矢量协议)

一、距离矢量协议 1、距离矢量协议 矢量行为:协议收到一个路由之后,查看是否可以加入到本地的路由表中,如果可以加入,则可以传递,如果不可以加入,则无法传递。 距离矢量路由协议 RIP基于距离矢量算法(又…

智慧语音助手学习

智慧语音助手 1 语音识别系统(ASR)2 语义理解1 传统的实现方法1. 音频信号处理和语音识别(Automatic Speech Recognition, ASR)2. 自然语言理解(Natural Language Understanding, NLU)3. 对话管理&#xff…

【高数强化】武忠祥高等数学辅导讲义+严选题错题整理

第一章 函数、极限和连续 高等数学辅导讲义 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 严选题 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 第二章 一元函数微分学 高等数学辅导讲义 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 严选…

港股再遭重挫,市场到底在恐慌什么?

恒指上周五挫逾300点后,今日早间延续低迷低开超百点,随后一路震荡下行,最低见17789.57点。整体市场都表现相当低迷,但17750附近有一定支撑。截至收盘,恒指收跌0.00%。 港股持续在万八关徘徊,国资委旗下国新…

8.12 矢量图层面要素单一符号使用六(SVG填充)

文章目录 前言SVG填充(SVG fill)QGis设置面符号为SVG填充(SVG fill)SVG填充(SVG fill) 总结 前言 本章介绍矢量图层线要素单一符号中使用SVG填充(SVG fill)的使用说明:文…

AI大模型之争:通用性与垂直性,哪个更具优势?

文章目录 每日一句正能量前言背景介绍能力分析通用大模型的能力:垂直大模型的能力:差异与互补性分析: 难点探究1. 算力挑战2. 数据挑战3. 算法挑战4. 泛化能力5. 可解释性和透明度6. 伦理和偏见问题7. 成本效益 后记 每日一句正能量 昨天已逝…

DIY灯光特效:霓虹灯动画制作教程

下面我们根据这张霓虹灯案例,教大家如何用智能动物霓虹灯闪烁的效果,大家可以根据思路,实现自己想要的动效效果,一起动手来做吧。 即时设计-可实时协作的专业 UI 设计工具 设置背景 新建画板尺寸为:800PX^600PX,设置背景色#120527。 绘制主题 输入自己喜欢文案,轮廓化,具体…

SaaS产品运营:如何将自助服务加入销售流程中【含案例】

在SaaS产品运营中,将自助服务有效融入销售流程,不仅可以提升用户体验,还能提高销售效率和客户满意度。以下是关于如何将自助服务加入销售流程中的具体建议: 一、明确自助服务的目标和内容 首先,需要明确自助服务的目…

​【VMware】VMware Workstation的安装

目录 🌞1. VMware Workstation是什么 🌞2. VMware Workstation的安装详情 🌼2.1 VMware Workstation的安装 🌼2.2 VMware Workstation的无限使用 🌞1. VMware Workstation是什么 VMware Workstation是一款由VMwar…

光伏能源圈

2021年,新型电力系统之下,中国已形成了两网五大六小的电力新格局: 两大电网:国家电网、南方电网 五大电力央企:国家能源投资集团、中国华能集团、中国华电集团、中国大唐集团、国家电力投资集团。 六小豪门&#xf…

vue的学习之路(Axios 基本使用)

<script src"js/axios.min.js"></script> 3、在页面中引用 4、发送异步请求 url?xxx rest请求【GET,POST,DELETE,PATCH】 5、准备一个SpringBoot的控制层与axios进行交互 实体类 public class User { private Integer id; private String user…

Ollama在Windows11部署与使用QWen2模型

0&#xff0c;Ollama介绍 Ollama是一个开源项目&#xff0c;旨在让用户能够轻松地在其本地计算机上运行大型语言模型&#xff08;LLM&#xff09;&#xff0c;是一个开源的大型语言模型服务。它支持各种LLM&#xff0c;包括Llama 3、Mistral和Gemma。提供了类似OpenAI的API接口…

Java8使用Stream流实现List列表查询、统计、排序、分组、合并

Java8使用Stream流实现List列表查询、统计、排序以及分组 目录 一、查询方法1.1 forEach1.2 filter(T -> boolean)1.3 filterAny() 和 filterFirst()1.4 map(T -> R) 和 flatMap(T -> Stream)1.5 distinct()1.6 limit(long n) 和 skip(long n) 二、判断方法2.1 anyMa…

OS中断机制-外部中断触发

中断函数都定义在中断向量表中,外部中断通过中断跳转指令触发中断向量表中的中断服务函数,中断指令可以理解为由某个中断寄存器的状态切换触发的汇编指令,这个汇编指令就是中断跳转指令外部中断通过在初始化的时候使能对应的中断服务函数如何判断外部中断被触发的条件根据Da…

【C++进阶之路】C++11——正则表达式

序言 正则表达式&#xff0c;简而言之就是用来匹配指定模式字符串的工具&#xff0c;在计算机的世界中&#xff0c;它发挥着很大的作用&#xff0c;比如编译器的词法分析&#xff0c;注册时验证密码的复杂度&#xff0c;爬虫爬取固定格式的数据时等场景都要用到。那么本篇的目的…