Linux笔记 - - gcc/g++和make/Makefile的使用

本文详细介绍了Linux系统中gcc/g++编译器的使用,包括预处理、编译、汇编和链接四个阶段的选项。同时,讲解了make和Makefile在自动化构建项目中的作用,阐述了依赖关系、依赖方法和项目清理,帮助读者理解如何通过Makefile实现高效编程。
摘要由CSDN通过智能技术生成

1.gcc/g++的概念

gcc/g++是Linux下一款编译器,让代码从一个文本文件(c/cpp)编译为一个可执行程序(.exe)

我们写上一段代码:

//文件名file.cpp
#include<iostream>
using namespace std;

int main()
{
  cout << "hello Linux" << endl;
  return 0;
}

一个简单的C++打印程序。那怎么让它执行起来呢?

使用g++:

g++ file.cpp

g++ .cpp文件  不带任何选项,默认生成了可执行程序,叫做a.out

gcc只能用来编译C程序,g++可以编译C和C++程序。

 2 gcc/g++选项

了解选项之前,首先要了解文件编译为可执行程序的过程,而gcc/g++的选项则对应者这个过程

2.1 预处理阶段

进行C/C++代码的头文件展开、宏替换、去除注释、条件编译等

选项:g++ -E file.cpp -o file.i

-E表示只进行预处理,-o表示编译的结果写入到file.i当中

 

写的代码不超过十行,头文件展开后变成一万多行 

 2.2 编译阶段

将生成的目标文件通过语法分析、词法分析、语义分析、符号汇总形成汇编文件(.s)

选项:g++ -S file.i -o file.s

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值