Linux如何用g++编译c++文件

安装g++编译器

我采用的Centos系统没有默认的g++编译器。首先你可以看一下自己当前环境是否安装了g++

打开Terminal终端执行如下命令

[root@yanlong~]#which g++
/usr/bin/g++

如果未安装可以在终端执行如下命令:

yum install gcc-c++

如果提示你需要root权限,可以输入su命令进行root用户模式

g++命令执行C++项目

c或c++项目的执行过程分成四步,依次是预处理,编译,汇编和链接

c++编程中文件有头文件(.h后缀)和源文件(.cpp后缀),在执行项目时,头文件是不需要经过四个过程,只有源文件需要经历这四个过程,假设现在有main.cpp和player,cpp文件

1.经历预处理阶段,执行如下命令:

g++ -E main.cpp -o main.i
g++ -E player.cpp -o player.i

其中,-E选项用于限定g++编译器只进行预处理过程,-O选项用于指定生成文件的名称。Linux系统中,通常用" .i "作为c++程序处理后所得文件的后缀名

2.经历编译阶段,对预处理得到的文件做进一步的语法分析,生成相应的汇编代码文件。

g++ -S main.i -o main.s
g++ -S player.i -o player.s

3.经历汇编阶段,将汇编代码文件转换成可执行的机器指令

g++ -C main.s -o main.o
g++ -C player.s -o player.o

4.链接阶段,将所有目标文件组织成可执行的二进制文件

g++ -C player.o main.o -o player.exe

如果不用-O指定可执行文件的名称默认会生成 .out 可执行文件。Linux系统并不以文件的扩展名区分文件类型, .out和.exe 都是可执行文件

这四个阶段,文件的生成不分先后,只要保证所有源文件都要经历这四个过程,最终会生成 .exe可执行文件

上述只是学习一个程序如何从源文件到可执行文件的过程,可以执行如下命令一步到位

[root@yanlong~]#g++ -C player.cpp main.cpp -o player.exe
[root@yanlong~]#./player.exe
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值