首先,编写源代码文件,例如test.c。 使用编译器编译源代码文件生成目标文件(.o),命令为gcc -c test.c。 使用ar工具创建静态库(.a),命令为ar rcs libtest.a test.o。 制作动态库 使用-fPIC或-fpic选项编译源代码文件生成位置无关代码的目标文件(.o),命令为gcc -c -fPIC test.c。 使用-shared选项将目标...
从上面的代码可以看出,GCC对源文件所包含的头文件stdio.h进行了预处理,由于输出文件example.i比较长,上面只给出了部分内容。 在编译阶段,输入的是中间文件*.i,编译后生成的是汇编语言文件*.s。对应的GCC命令为: $ gcc -S example.i -o example.s example.s即为生成的汇编文件,其内容为: .file "example.c...
gcc 是 GNU 编译器集合中的 C 语言编译器。 它支持多种 C 语言标准(如 ANSI C、ISO C89、ISO C99)以及一些扩展特性。 gcc 可以将 C 语言源代码编译成可执行文件,或者生成汇编代码和目标文件。 g++: g++ 是 GNU 编译器集合中的 C++ 语言编译器。 它在 gcc 的基础上添加了对 C++ 语言的支持,包括标准 ...
一、GCC交叉编译工具链 GCC编译工具链包含了GCC编译器在内的一整套工具,主要包含了GCC编译器、Binutils工具集、glibc标准函数库。一般情况下,我们说的GCC编译工具链就是指GCC编译器。 1. GCC编译器 GCC原名为GNU C语言编译器(GNU C Compiler),只能对C语言进行编译等处理。后来随着其功能的扩展,可以支持更多编程语...
gcc -o hello hello.c -o选项告知gcc编译器将hello.c文件编译为hello文件: -o选项的格式为: -o [file] [file2] 直接:gcc file 生成a.out 命名 gcc编译流程 gcc编译器在编译一个C语言程序预处理,生成.i文件. 预处理后的.i文件编译成为汇编语言,生成.s文件. ...
常用编译选项参数汇总 使用方法介绍 总结 一GCC交叉编译工具链 GCC编译工具链包含了GCC编译器在内的一整套工具,主要包含了GCC编译器,Binutils工具集,glibc标准函数库。一般情况下,我们说的GCC编译工具链就是指GCC编译器。 1. GCC编译器 GCC原名为GNU C语言编译器(GNU C Compiler),只能对C语言进行编译等处理。后来...
一、gcc编译器 编译器:把文件经过处理,生成对应的可执行文件。 //test.c文件: X86平台上面: gcc编译器,可以在x86平台上面运行。 ARM平台上面的: arm-linux-gcc 交叉编译器:在一个平台编译生成可执行文件,在另外一个平台运行可执行文件。 例如windows下面的keil就是一个交叉编译器。
Linux一般自带gcc编译器,可以通过gcc –v查看其版本号,如下图: 从打印信息中 “Target:x86-64-linux-gnu”,可以看出默认的gcc编译器是针对x86架构的,因此编译得出的可执行文件只能在x86架构下执行;而一般情况是在Linux下开发编译C程序,然后在ARM下执行,因此需要安装交叉编译C编译器。
GCC编译器(GNU C Compiler)是GNU组织的一款开源 编译器,它是Linux环境下的默认C语言编译器。它处理能够高效的编译C语言以外,还可以编译其他语言。并且,现在的GCC已经不光包括编译器本身,还包含了编译过程中的工具链。 1 GCC编译流程 在学习使用GCC编译程序之前,首先要知道编译C程序的基本流程,一般情况下分为下面四...