Linux 入门 (四)

【GCC 编译器】

编译器把C源代码构建成计算机能够直接执行的二进制代码。linux下最常用的C语言编译器GCC(GNU COMPILER COLLECTION),它是符合ANSI C标准的编译器,能够编译C/C++语言编写的程序。GCC支持各种不同的硬件平台,目前已经支持几十种体系结构,如:intel x86、arm、powerpc等。GCC还能够运行在不同的操作系统,如:linux、windows等。

GCC支持基于宿主的开发(也就是要为某平台开发程序,就在该平台上编译),也支持交叉编译(在A平台上编译的程序,供B平台使用)。和其它编译器一样,GCC也提供了强大的代码优先功能,可以生成执行效率较高的代码。

【GCC 程序编译阶段】

1)预处理(pre-processing),处理源文件中的预处理命令,可以生成*.i中间文件,命令:gcc -E main.c -o main.i

2)编译(compiling),处理生成的*.i中间文件,生成汇编文件*.s,命令:gcc -S main.i -o main.s

3)汇编(Assembling),处理生成的汇编文件*.s,生成二进制机器代码*.o,命令:gcc -c main.s -o main.o

4)链接(Linking),处理生成的二进制机器代码文件*.o,将其和其它机器代码文件、库文件链接成一个可执行的二进制代码文件,命令:gcc  main.o -o main

猜你喜欢

转载自www.cnblogs.com/caiiniaoshiyizhixiaoxiaoniao/p/12200492.html