gcc使用

GCC安装和使用 1、什么是GCC “Linux系统下的Gcc(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。 gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。” GCC 不仅支持 C 的许多“方言”,也可以区别不同的 C 语言标准;可以使用命令行 选项来控制编译器在翻译源代码时应该遵循哪个 C 标准。例如,当使用命令行参数 -std=c99 启动 GCC 时,编译器支持 C99 标准。 安装命令:版本& 阅读详情

1、最简单例子C

$vi hello.c

#include<stdio.h>

int main(void)

{

printf ("Hello world, Linux programming!/n");

return 0;

}

# gcc hello.c -o hello

# ./hello

2、最简单例子C++

#include <iostream>

using namespace std;

int main (void)

{

  cout << "Hello, world!" << endl;

}

则可以如下调用 g++ 命令编译、连接并生成可执行文件:

$ g++ ghello.cpp –o ghello

$ ./hello

1、  原理

首先,GCC需要调用预处理程序 cpp,由它负责展开在源文件中定义的宏,并向其中插入“#include”语句所包含的内容;接着,GCC会调用ccl和as将处理后的源代码编译成目标代码;最后,GCC会调用链接程序ld,把生成的目标代码链接成一个可执行程序。

为了更好地理解GCC的工作过程,可以把上述编译过程分成几个步骤单独进行,并观察每步的运行结果。第一步是进行预编译,使用-E参数可以让GCC在预处理结束后停止编译过程:

# gcc -E hello.c -o hello.i

此时若查看hello.i文件中的内容,会发现stdio.h的内容确实都插到文件里去了,而其它应当被预处理的宏定义也都做了相应的处理。下一步是将hello.i编译为目标代码,这可以通过使用-c参数来完成:

# gcc -c hello.i -o hello.o

GCC默认将.i文件看成是预处理后的C语言源代码,因此上述命令将自动跳过预处理步骤而开始执行编译过程,也可以使用-x参数让GCC从指定的步骤开始编译。最后一步是将生成的目标文件链接成可执行文件:

# gcc hello.o -o hello

在编译一个包含许多源文件的工程时,若只用一条GCC命令来完成编译是非常浪费时间的。尤其是当用户只是修改了其中某一个文件的时候,完全没有必要将每个文件都重新编译一遍。要解决这个问题,关键是要灵活运用GCC,同时还要借助像Make这样的工具。

3、多个程序文件的编译

设有一个由test1.c和 test2.c两个源文件组成的程序,为了对它们进行编译,并最终生成可执行程序test,可以使用下面这条命令:

# gcc test1.c test2.c -o test

上面这条命令大致相当于依次执行如下三条命令:

# gcc -c test1.c -o test1.o

# gcc -c test2.c -o test2.o

# gcc test1.o test2.o -o test

4、检错

gcc -pedantic illcode.c -o illcode

-pedantic选项能够帮助程序员发现一些不符合 ANSI/ISO C标准的代码,但不是全部,事实上只有ANSI/ISO C语言标准中要求进行编译器诊断的那些情况,才有可能被GCC发现并提出警告。

5、库文件连接

6、优化

-On来控制优化代码的生成,其中n是一个代表优化级别的整数。

7、程序性能分析 

GCC支持的其它调试选项还包括-p和-pg,它们会将剖析(Profiling)信息加入到最终生成的二进制代码中。

GCC和GCC-C++编译器安装与使用指南 本文还有配套的精品资源,点击获取 简介:GCC是一个开源且跨平台的编译器集合,由GNU项目开发,支持多种编程语言的编译。GCC-C++是GCC的C++语言扩展,提供了对C++语言的全面支持。本文介绍了GCC和GCC-C++的安装方法,使用基础,以及编译选项,包括优化与调试,强调了这些工具在开发中的重要性以及如何利用它们提高编程效率和程序质量。 1. GCC和GCC... 阅读详情

相关推荐

VirtualBox增强功能安装全指南:从下载到配置复制粘贴功能

本文详细介绍了VirtualBox增强功能的完整安装与配置流程,重点解决了虚拟机与主机间复制粘贴、文件拖放等核心协作难题。通过分步指南和故障排查,帮助用户在不同操作系统(如Windows、Linux)中实现无缝集成,提升虚拟化工作效率与体验。

weixin_29206669的博客 419

Windows中使用GCC介绍

Windows中使用GCC介绍。注意,GCC与gcc,g++是不同的东西: 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++编译器)。.....................

cnds123的专栏 1万+

【GCC、gcc、g++】中

本文介绍了GCC编译器套件中的gcc和g++工具。

优快云_RTKLIB的博客 908

【硬件相关】IB网与以太网核心技术解析及高性能网络部署指南

本文深入解析了IB网与以太网的核心技术差异,包括协议栈、流量控制机制及硬件架构,并提供了高性能网络部署的实战指南。通过对比测试和调优案例,展示了IB网在低延迟和高负载下的优势,以及混合组网中的创新应用,助力超算集群和高效网络部署。

weixin_29311017的博客 99

浅谈Android MVI架构---大自然的搬运工~~~

浅谈 Android MVI架构

hong_world的博客 2154

gcc和arm-linux-gcc(使用)

gcc和arm-linux-gcc(使用)

兰钧的博客 8493

[Dify实战] 合同审阅助手:识别风险条款、生成修改建议-带绑定资源

摘要: Dify合同审阅助手通过AI技术提升合同审阅效率,快速识别风险条款并输出结构化修改建议。方案包括合同输入、关键条款识别、风险评级和报告生成流程,重点关注付款、责任限制等核心条款。采用分层风险分级(高/中/低)和"红线清单"机制,确保审阅标准化。实施建议先建立条款库和模板,通过样本测试优化模型,定期更新规则库。该方案可缩短审阅时间50%以上,提高风险识别准确率,最终实现法务经验的可复用沉淀。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 597

【GCC】gcc编译器的使用

gcc编译器的使用

weixin_50964793的博客 7864

【大模型学习】第二十四章 生成式人工智能(GAI)简介

‌的AI技术,其核心目标是通过学习数据中的规律,生成与训练数据类似但全新的文本、图像、音频、视频甚至代码。生成式人工智能(GAI)是一类能够‌。

以实战经验介绍行业知识 1637

kaggle学习笔记-餐厅数据挖掘

分析Zomato数据集的基本思想是为了公平地了解影响在班加罗尔不同地方建立不同类型餐厅的因素,每个餐厅的总评级,班加罗尔是这样一个城市,拥有超过12,000家餐厅,餐厅供应来自世界各地的菜肴。每天都有新的餐馆开业,这个行业还没有饱和,需求也在与日俱增。然而,尽管需求不断增加,新餐馆却很难与老牌餐馆竞争。大多数餐厅都供应同样的食物。班加罗尔是印度的IT之都。这里的大多数人主要依靠餐馆的食物,因为他们没有时间自己做饭。由于对餐馆的需求如此巨大,因此研究一个地方的人口统计学就变得很重要。

优快云XXCQ的博客 1862

gcc安装及使用

GCC GCC简介 早期 GCC 的全拼为 GNU C Compiler,即 GUN 计划诞生的 C 语言编译器,显然最初 GCC 的定位确实只用于编译 C 语言。但经过这些年不断的迭代,GCC 的功能得到了很大的扩展,它不仅可以用来编译 C 语言程序,还可以处理 C++、Go、Objective -C 等多种编译语言编写的程序。与此同时,由于之前的 GNU C Compiler 已经无法完美诠释 GCC 的含义,所以其英文全称被重新定义为 GNU Compiler Collection,即 GNU 编

weixin_46008120的博客 2037

【AI Guide】AI面试攻略只用看这一篇就够了!力争做全网最全的AI面试攻略——大模型(五)Adapter 微调

Adapter 微调(Adapter Fine-tuning)是一种高效的参数高效微调(PEFT)方法。相较于全参数微调(Full Fine-tuning),Adapter 在预训练模型的特定层插入轻量级的可训练模块,而冻结原始模型参数,从而减少计算和存储开销。是缩放因子,控制 Adapter 输出的影响程度。设 Transformer 层的隐藏状态为。为 Adapter 层的可训练参数,为非线性激活函数,如 ReLU。为冻结的预训练模型参数,

AI科研社 183

gcc安装与使用

gcc安装与使用

qq_39030233的博客 7672

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

GCC,gcc,g++关系

GCC,gcc,g++关系 GCC(GNU Compiler Collection,GNU编译器套件)是由GNU开发的编程语言译器。GNU编译器套件包括C、C++、 Objective-C、 Fortran、Java、Ada和Go语言前端,也包括了这些语言的库(如libstdc++,libgcj等。) 即当下的 GCC 编译器还支持编译 Go、Objective-C,Objective-C ++,Fortran, Java,Ada,D 和 BRIG(HSAIL)等程序, gcc是GCC中的GUN C C

jokerMingge的博客 759

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

【GCC编译】GCC 使用中常用的参数及命令

【转载】gcc 使用中常用的参数及命令 本文转载自:http://www.cnblogs.com/yaozhongxiao/archive/2012/03/16/2400473.html 如需转载,请注明原始出处。谢谢。 ----------------------------------------------------------------...

一个专注于嵌入式IoT领域的架构师,深耕IoT领域多年,深度掌握IoT领域的相关技术栈,包括但不限于RTOS内核的实现及其移植、硬件驱动移植开发、网络通讯协议开发、编译构建原理及其实现、底层汇编及编译原理、编译优化及代码重构、嵌入式IoT系统的架构设计等。 6万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

GCC 详解

[root@bogon ~]# gcc -xc demo.c #或者直接运行 gcc demo.c [root@bogon ~]#

BIG SHARK的博客 3010

gcc编译器的使用

文章目录1 gcc编译过程1.1 gcc分步编译过程1.2 编译多个文件2 常用编译选项3 制作、使用库文件3.1 制作、使用静态库3.2 制作、使用动态库 1 gcc编译过程 一个C/C++文件要经过预处理(preprocessing)、编译(compilation)、汇编(assembly)和链接(linking)等4步才能变成可执行文件。 1.1 gcc分步编译过程 预处理: gcc -E...

木子皿--啥都不会的菜鸟 907

Ubuntu GCC的使用

Ubuntu GCC的使用

liuasdfgqwer的博客 1745

GCC使用

https://pan.wps.cn/l/setVpd8ji [文档] linux基础班GCC.doc 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++...

一个不甘于此的弱鸡 404

WINDOWS下如何安装GCC

WINDOWS下如何安装GCC? 2013/09/14 JULUREN 第一章 在视窗操作系统下的GCC 第一节 GCC家族概览 GCC 是一个原本用于 Unix-like 系统下编程的编译器。不过,现在 GCC 也有了许多 Win32 下的移植版本。所以,也许对于许多 Windows 开发者来说, GCC 还是一个比较陌生的东西。所以,我希望通过这章的叙述

yunxian_19的专栏 2万+

GCC使用简易教程

使用GCC编译C程序1. 检查是否安装GCC2. 使用GCC编译C程序2.1 逐步实现2.1.1 预处理2.1.2 编译2.1.3 汇编2.1.4 链接2.1.5 输出所有中间步骤文件2.1.6 仅检测语法2.2 多个输入文件2.3 动态链接和共享对象文件2.4 独立程序3 编译器警告4 调试 1. 检查是否安装GCC 如果已经安装好GCC,并链接到名为cc的默认C编译器,就会看到编译器版本号和版...

addsomesugar的博客 1674

gcc的基本用法

目录 一、GCC 二、GCC、gcc、g++三者关系 三、gcc编译过程 四、文件类型 五、gcc编译选项 一、GCC GCC(GNU Compiler Collection)即GNU编译器套件,属于一种编程语言编译器,其原名为GCC(GNU C Compiler)即GNU c语言编译器,虽然缩写一样但是功能上区别很大。GCC的初衷是为GNU操作系统专门编写的一款编译器,原本的GNU...

hurryddd 4659

linux下gcc和gcc-c++的作用

linux 为什么要安装gcc和gcc-c++(又叫做g++) gcc-c++(又叫做g++)是为gcc提供c++语言特性支持的 linux上的gcc是Gnu的C语言编译器,至于C++编译器,它的名字叫做g++。 linux中的gcc是由GNU推出的一款功能强大的、性能优越的多平台编译器。gcc编译器能将C、C++语言源程序和目标程序编译、连接成可执行文件。 GCC:GNU Compiler Collection(GUN 编译器集合),它可以编译C、C++、JAV、Fortran、Pascal、Object

hualinger的博客 3517

gcc 的使用

一、GCC GCC 编译器是 Linux 下默认的 C/C++ 编译器,大部分 Linux 发行版中都是默认安装的。GCC 编译器通常以 Linux 命令的形式在终端(Shell)中使用,它有很多选项,这是我们要重点学习的。 1.1 gcc的编译过程 预处理(pre-processing)E:插入头文件,替换宏 编译(Compiling)S:编译成汇编 汇编(Assembling) c:编译...

书香水墨 1443

GCC编译器的使用

1 GCC 编译工具链 1.1 简介 GCC 编译工具链(toolchain)是指以 GCC 编译器为核心的一整套工具,用于把源代码转化成可执行应用程序。它主要包含以下三部分内容: gcc-core :即GCC编译器,用于完成预处理和编译过程,例如把C代码转换成汇编代码。 Binutils :除GCC编译器外的一系列小工具包括了链接器 ld ,汇编器 as 、目标文件格式查看器 readelf 等。 glibc :包含了主要的 C 语言标准函数库,C 语言中常常使用的打印函数 printf、ma

开发界里的一股清流 2042
上一篇: vi编辑器使用方法
下一篇: shell编程学习笔记
sunxp
博客等级 码龄25年 16粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值