首页 > 代码库 > Ubuntu下c程序运行原理

Ubuntu下c程序运行原理

运行环境:

1、Vitural box下安装Ubuntu虚拟机

2、编译运行工具:gcc

3、编辑器:vim


 

主要过程:

1、利用vim编辑hello.c 

技术分享

技术分享

2、编译和执行

(1)预处理阶段:使用 -E命令,得到编译文件; -o将预处理的输出存储到文件

技术分享

(2)编译阶段:使用-S 命令将预处理文件编译为汇编语言文件,生成文件默认为.s的后缀;-o可以指定产生的汇编文件的名字

技术分享

(3)汇编阶段:使用-c命令,将汇编文件编译成可重定向的目标文件,(二进制形式,后缀为.o)

也可以结合-o命令产生指定名称的目标文件

技术分享

 技术分享

 (4)链接阶段:链接器将可重定向的文件hello.o以及库文件,执行并入操作,形成可执行的目标文件。

默认生成a.out,可以利用-o选项生成目标文件的名称。

 技术分享

(5)执行阶段:

技术分享

 

gcc hello.c -o hello 命令,直接将hello.c编译为可执行的目标文件,中间经过预处理阶段、编译极阶段、汇编阶段、链接阶段。

技术分享

 

Ubuntu下c程序运行原理