标签:链接器 位置 源代码 detail 宏定义 源代码编译 程序 blank 自动
1、在当前目录下新建c文件
$:vim hello.c
2、按i进入编辑模式。按esc退出编辑模式,输入源代码
#include <stdio.h>
int main(void)
{
printf("hello world");
return 0;
}
退出编辑模式,按住shift+两次z退出
3、使用gcc编译c文件
gcc hello.c -o hello
4、会生成hello可执行文件,执行
./hello
ps:关于gcc编译c的过程
1. 源代码编译预处理:在预处理过程中,对源代码文件中的文件包含(include)、预编译语句(如宏定义define等)进行分析。
gcc -E hello.c -o hello.i
2. 经过编译器,生成汇编代码:
gcc -S hello.i -o hello.s
3. 经过汇编器,生成目标代码:
gcc -c hello.s -o hello.o
4. 经过链接器(负责将程序的目标文件与所需的所有附加的目标文件连接起来,附加的目标文件包括静态连接库和动态连接库),生成可执行程序:在链接阶段,所有的目标文件被安排在可执行程序中的恰当的位置,同时,该程序所调用到的库函数也从各自所在的档案库中连到合适的地方。
gcc hello.o -o hello
5. 运行可执行文件:
./hello
6. 上述步骤可以放在一起执行,gcc内部自动进行一系列处理:
gcc hello.c -o hello
./hello
转自:http://blog.csdn.net/yeruby/article/details/39450627
标签:链接器 位置 源代码 detail 宏定义 源代码编译 程序 blank 自动
原文地址:http://www.cnblogs.com/judes/p/6999917.html