gcc 命令

gcc 命令

gcc 命令使用 GNU 推出的基于 C/C++ 的编译器,是开放源代码领域应用最广泛的编译器,具有功能强大,编译代码支持性能优化等特点。现在很多程序员都应用 GCC,怎样才能更好的应用 GCC。目前,GCC 可以用来编译 C/C++、FORTRAN、JAVA、OBJC、ADA 等语言的程序,可根据需要选择安装支持的语言。

语法

gcc (选项)(参数)

选项

1
2
3
4
5
6
7
8
9
10
11
12
13
-o:指定生成的输出文件;
-E:仅执行编译预处理;
-S:将C代码转换为汇编代码;
-wall:显示警告信息;
-c:仅执行编译操作,不进行连接操作。
-m32:生成32位机器上的代码。
-m64:生成64位机器上的代码。

各种安全选择的编译参数如下:
NX:-z execstack / -z noexecstack (关闭 / 开启)
Canary:-fno-stack-protector /-fstack-protector / -fstack-protector-all (关闭 / 开启 / 全开启)
PIE:-no-pie / -pie (关闭 / 开启)
RELRO:-z norelro / -z lazy / -z now (关闭 / 部分开启 / 完全开启)

参数

C 源文件:指定 C 语言源代码文件。