gcc编译器


前言

简单介绍gcc编译器编译步骤。


一、编译步骤

hello.c(示例):

#include <stdio.h>
int main(void) 
{
    printf("HelloWorld\n");
    return 0;
}
  1. 预处理:就是将源文件中包含的头文件内容全部拷贝到源文件的过程,预处理命令:gcc -E -o 预处理文件.i 源文件.c(切记:-o选项后面永远跟要新生成的文件)

    gcc -E -o hello.i hello.c	
    

将hello.c进行预处理生成hello.i,这里是将stdio.h文件的内容拷贝到源文件,通过vim hello.i 可以发现main函数前面多了许多内容,这正是stdio.h的代码。

  1. 只编译不链接:将预处理文件.i单独翻译生成可执行文件,但是此时不包含标准C库函数代码,例如:printf,所以此时生成的可执行文件不能运行。gcc命令:gcc -c -o 可执行文件.o 预处理文件.i

    gcc -c -o hello.o hello.i	
    

将hello.i进行编译生成hello.o,此时vim hello.o会发现内容是乱码,这是gcc编译之后的二进制机器语言。但此时文件还不能执行,因为hell.o只是通过include <stdio.h>外部声明了printf函数,但是具体printf的实现在外面一个库文件里面,比如printf.o。

  1. 链接:将自己的目标文件与其他的库文件或者目标文件.o合并在一起最终生成执行文件.out,gcc命令:gcc -o 可执行文件 可执行文件.o 或者 预处理文件或者源文件.c

    gcc -o hello hello.o 
    

链接器将printf.o并入hello.out,此时可执行文件能够被执行,./hello能够执行

总结:可以将三个步骤直接一步生成gcc命令:gcc -o 可执行文件 目标文件.o

	gcc -o hello hello.c	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RISC-V GCC编译器手册是一本详细介绍如何使用RISC-V架构下GCC编译器的参考手册。GCC是一种自由软件,被广泛用于编译各种编程语言,包括C、C++和Fortran等。RISC-V是一种基于精简指令集计算机(RISC)原理的开源处理器架构。 手册中首先介绍了RISC-V工具链的安装和配置,包括如何获取GCC编译器和相关的工具。它详细说明了如何在不同的操作系统上进行编译器和工具链的安装过程,并提供了一些常见问题的解答。 接下来,手册详细介绍了GCC编译器的各种选项和参数的用法。这些选项和参数可以用于控制编译器的行为,如优化级别、调试选项、错误处理、输出文件格式等。手册还提供了一些示例和说明,以帮助用户理解和使用这些选项。 此外,手册还涵盖了GCC编译器针对RISC-V架构的特定优化策略。这些优化策略可以提高代码的性能和效率,包括指令调度、寄存器分配、循环优化等。手册中还解释了如何使用这些优化选项,并给出了一些示例来说明其作用。 最后,手册还包括对GCC编译器的一些扩展功能的介绍,如内联汇编、向量指令集扩展、浮点运算支持等。这些扩展功能使得GCC编译器能够更好地支持RISC-V架构下特定的编程需求。 总之,RISC-V GCC编译器手册是一本详细、全面的参考手册,为用户提供了使用GCC编译器进行RISC-V架构开发的必备指南。无论是初学者还是有经验的开发者,都可以通过这本手册深入了解和掌握GCC编译器的用法,从而更加高效地进行RISC-V架构下的软件开发。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值