gcc/g++使用

Linux——gcc/g++以及make/Makefile的使用 在Linux的系统中,想要完成代码编译,gcc/g++是不可缺少的工具,而make/Makefile能否熟练应用则从一个侧面体现出一个人是否有能力独自完成一个大型工程,而本篇文章就带领大家了解一些gcc/g++和make/Makefile使用的基础知识。 阅读详情

gcc/g++使用

这个是编译器,进行相关的东西。这个是开源的编译器,进行c与c++进行编译。

进行的过程:

1, 预处理

2,汇编

3,链接

预处理

gcc -E进行预处理重定义一个输出文件里面。

通过预处理之后的经过

gcc -E main.c -o main.i 

生成相关的.i的文件,变成相关的东西。

编译(生成汇编)

gcc -c main.s -o main.o

汇编生成main.o文件内容,可以直接预处理语言变成汇编。

汇编(生成机器可识别代码)

gcc -c main.c -o main.o

直接生成.o文件。

链接(生成可执行文件或者库文件)

gcc main.o -o main 

生成main文件,变成相应的东西。

函数库

在编译链接时,库文件不同处理方法,分别不同的静态库与动态库

静态库

静态库是指编译链接时,把库文件的代码全部加入到可执行文件中,因此生成的文件比较大,但在运行时也就不再需要库文件了。其后缀名一般为“.a”

动态库

没有将库放在可执行程序之中,运行过程之中进行动态提取库文件。

节省空间与开销在系统上面,动态库后缀名为“.so”.

调试器gdb使用

gdb的使用,基本上使用release模式相关的东西。基本的东西使用方法与调试相同,只是用简单的代码进行调节,不是之前的步骤进行相关的操作。(Xcode也可以进行相关的操作)

通过gcc反应之后得到了相关的可执行程序,然后

gdb test //test可执行程序

1,b (break)+ 行号:打断点

2,d(delete) + 断点编号:删除断点

3,l + 行号:显示代码

4,s(step):逐语句(进入函数)

5,n(next):逐过程

6,display && undisplay:行显示或者取消常显示

7,until + 行号 :跳转到指定行

8,r(run):运行程序

9,c(continue):从一个断点到下一个断点

10,finish:执行完成一个两数就停下*!

11, j(jump) + 行号:跳到指定行

12,k(kill):终止程序运行

13,i(info) : 查看当前栈帧局部变量的值

别再手动改文献了!手把手教你定制Mendeley的GB/T 7714-2005引用格式(附常见问题修复) 本文详细指导如何定制Mendeley的GB/T 7714-2005引用格式,解决科研文献管理中的常见问题。通过深度解析Mendeley样式编辑器,精准控制作者显示规则、出版社信息精简及期刊页码处理,实现参考文献一键合规。附常见问题修复和实战调试方法,大幅提升学术写作效率。 阅读详情

相关推荐

C# ArcGIS Engine二次开发——实现“加载shp文件”

private void AddShpDataToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog OpFileDialog=new OpenFileDialog();//OpenFileDialog:打开文件对话框 OpFileDialog.Title="添加矢量数据"; OpFileDialog.Filter="(*.shp)|*.shp";//filter:过滤器;"(*.shp)|*.shp"

weixin_42191203的博客 5254

gcc/g++工具的使用

程序执行的四个过程、链接方式和函数库、gcc/g++的基本使用

好兄弟起把大狙 626

VLP16:使用pointcloud_to_laserscan将三维点云转化为二维LaserScan

velodyne16线激光雷达 VLP16:使用pointcloud_to_laserscan将三维点云转化为二维LaserScan

NEUer_ljx的博客 4619

【Linux】gcc编译器的使用(程序的翻译过程)

文章基于程序的翻译过程:预处理、编译、汇编、链接,讨论了Linux下gcc编译器的基本使用。

大米饭的记录册 1425

缠论 公式 自动画线 画笔 中枢 买卖点 源代码

【代码】缠论 公式 自动画线 画笔 中枢 买卖点 源代码。

weixin_40835859的博客 2万+

【DRAM存储器六十七】DDR5介绍--训练相关之write leveling

详述DDR5 write leveling细节

highman110的博客 287

【Linux】Linux中gcc/g++的使用

此文讲解了:在Linnx中c/c++语言的编译过程,以及动态库和静态库的知识。通过此文可以熟练的掌握gcc和g++的使用。

zxf123567的博客 2107

YOLO26改进策略【YOLO和Mamba】| 替换骨干 Mamba-YOLO26-L !!! 最新的发文热点

Vision Clue Merge模块在Mamba - YOLO模型中同样重要,主要负责在模型的下采样过程中处理特征图,为后续的特征融合和目标检测任务提供更有效的信息。

Limiiiing的博客 472

VS 2022安装、使用教程、scanf报错问题解决以及个性化VS

C语言常用的软件 Visual Studio 2022的安装使用教程、scanf的报错解决、以及个性化VS的方法

weixin_72481085的博客 2937

RAG的“诊断艺术”:从测试集结果倒追根源,精准优化检索、排序与生成

当RAG应用给出一个糟糕的答案时,开发者的第一反应可能是:“我的Prompt写得不够好?”这种基于“感觉”的猜测往往是低效的。通过构建一个包含黄金上下文信息的测试集,我们可以像一位经验丰富的医生一样,对RAG系统的各个“器官”进行独立的“健康检查”。一个用于RAG诊断的测试集,除了问题和答案,还需要包含中间环节的“黄金标准”。如果你的RAG流程包含Re-ranker,那么在评估完初期的召回后,需要单独评估Re-ranker的效果。RAG的优化是一个持续的过程,应该形成一个闭环。的文档块尽可能多地召回。

kakaZhui的博客 153

学Simulink——基于Simulink的Buck-Boost变换器双闭环PI+抗饱和设计建模示例

本文详细介绍了基于Simulink的非反相Buck-Boost变换器双闭环控制设计方法。针对Buck-Boost变换器特有的右半平面零点(RHPZ)和控制挑战,提出了电压-电流双闭环PI控制架构,并集成抗积分饱和机制。通过Simulink建模,实现了主电路、电流内环PI、电压外环PI、PWM及占空比限幅等模块的搭建,验证了在输入电压跌落(20V→10V)和负载突变(2A→4A)等场景下的稳定性能。仿真结果表明,输出电压波动小于0.35V,恢复时间快于1ms,电感电流有效限幅。文章还讨论了工程实践要点和扩展方

xiaoheshang_123的博客 318

编译器gcc/g++的使用以及调试工具gdb的使用(有一点基础就能学会!)

Linux下重要工具的使用Linux下重要工具的使用作者:@专栏:@作者简介:大一学生 希望能向其他大佬和同学学习!本篇博客简介:主要介绍了Linux下程序的编译和调试,以及在Linux下提交代码到gitub上。

xuecde的博客 2837

Transformer实战——Transformer自编码模型

自编码模型依赖于原始 Transformer 编码器,并且在解决分类问题时非常高效。除了 BERT 外,还有许多流行的自编码模型,在本节中,我们将一些除 BERT 外的自编码模型,这些模型的目标是通过优化预训练过程、增加层数或头数、改善数据质量、设计更好的目标函数等,来在下游任务上取得更好的表现。这些改进大致可以分为两个方面,更好的架构设计选择和预训练控制。

盼小辉丶的博客 9317

Linux基础之gcc/g++

在我们写程序的时候,我们会发现我们明明没有实现输出的功能,却可以用printf这个函数将想要的内容打印到显示器上。这是因为我们使用这个函数是有前提的,我们需要包含一个stdio.h的头文件,这其实就是我们的前辈写好的库,而我们程序如果要用printf这个函数的话,就需要依赖于第三方库。在Linux中,我们可以使用相关指令去查看我们引用了哪些第三方库。ldd(list dynamic dependencies)是一个用于查看可执行文件或者共享库文件所依赖的动态链接库的命令。

JYXCZYH的博客 2019

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Linux编辑器-gcc/g++使用

前面咱们用vim来写代码,用起来有点怪怪的,今天咱们学一个新的编译器gcc/g++,这个编译器既可以编译C也可以编译C++,可谓必备之一学习工具呀。⭐。

AAlykk的博客 1669

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【Linux】超好用的编译工具 —— gcc/g++

记忆gcc选项的小技巧: 预处理、编译、汇编对应的gcc选项分别是 “-E”、“-S”、“-c”,我们把这几个字母连起来也就是键盘的最左上角那个键【Esc】,我们只需要记住E和S是大写的,c是小写的即可。 而预处理、编译、汇编后形成的文件后缀连起来就是【iso】(iso也就是镜像文件的后缀)。 所以最后我们只需要记住选项【Esc】对应文件后缀【iso】即可。

这是一个非常有意思的博主 2万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

【Linux】gcc/g++的使用

GCC(GNU Compiler Collection)是一套由GNU计划开发的编译器集合,它是一种开源的编译器套件,用于编译和运行C、C++、Fortran、Ada、以及其他一些编程语言的程序。其中,g++是GCC中专门用于编译C++程序的工具。由于其开放源代码的特性,GCC已经成为许多操作系统和平台上的标准编译器,例如Linux、GNU Hurd、Mac OS X等。g++是GCC中用于编译C++源代码的前端工具。

有趣的中国人的博客 1693

【Linux】编译器-gcc/g++

💬 hello!各位铁子们大家好哇。今日更新了Linux的编译器gcc、g++的内容。

qinjh_的博客 3818

gcc/g++ 编译选项详解

它打开 -ffast-math、-fallow-store-data-races 和176 Using the GNU Compiler Collection (GCC) Fortran 特定的 -fstack-arrays,除非指定 -fmax-stack-var-size,和-fno-protect-parens。-fold-unroll-loops 意味着 -fstrength-reduce 和 -frerun-cse-after-loop。这是使用旧的循环展开器完成的,其循环识别基于前端的注释。

RandyOliver's House 5629

GCC/gcc/g++那些事儿

本文介绍了GCC,gcc和g++这三者之间的关系,对比了gcc与g++之间的不同之处,并使用代码示例说明。

Mr_Sudo的博客 1876

Linux中gcc/g++的安装和使用

1、GCC、gcc、g++的区别: (1)三者比较 GCC: GNU Compiler Collection(GUN 编译器集合),它可以编译C、C++、JAV、Fortran、Pascal、Object-C、Ada等语言。 gcc是GCC中的GUN C Compiler(C 编译器) g++是GCC中的GUN C++ Compiler(C++编译器) ...

蓬莱道人的博客 2万+

【Linux系统】—— 编译器 gcc/g++ 的使用

gcc/g++

yusjushd的博客 1759

【Linux_gcc/g++】Linux编译器 - gcc/g++使用

GCC(GNU Compiler Collection)是一个由GNU开发的**编译器套件**,支持多种编程语言,如C、C++、Objective-C、Fortran、Ada等。GCC是一个开源的编译器,被广泛用于许多操作系统和平台上。

wa_ke688的博客 1222

【Linux 05】gcc / g++ 编译器

1. gcc / g++ 的使用。2. gcc / g++ 翻译程序的过程。3. gcc / g++ 常见选项。

shangguanxiu的博客 2667

Linux工具学习之【gcc/g++】

书接上文,我们已经学习了 Linux 中的编辑器 vim 的相关使用方法,现在已经能直接在 Linux 中编写C/C++代码,有了代码之后就要尝试去编译并运行它,此时就可以学习一下。

2401_83603768的博客 1593
上一篇: vector类
下一篇: 自动化工具
assibe
博客等级 码龄5年 1640粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值