面试题----gcc的编译流程
gcc编译流程
一、 编译与处理指令:
gcc -E hello.c -o a.c
如果不使用-o指定输出的文件,会默认输出到终端。所以建议使用同时使用-o选项。
还要注意:编译时会保留#pragma编译器指令,因为编译器需要使用它们。
二、 编译指令:
将C代码翻译成汇编代码
gcc -S hello.c -o a.s
如果不使用-o选项指定输出文件,默认输出到a.s。
三、 汇编指令:
将汇编代码翻译成机器码
gcc -c hello.c -o a.o
如果不使用-o选项指定输出文件,默认输出到a.o。
四、 链接指令:
gcc hello.c -o a
gcc不带任何参数。
如果不使用-o参数指定输出的文件,会默认生成a.out文件。
以上指令,后面的指令都包含前面指令的功能,比如gcc不带参数,不是仅仅适用于链接,它也可以包含整个编译阶段。
面试题----gcc的编译流程的更多相关文章
- Gcc的编译流程分为了四个步骤:
http://blog.csdn.net/xiaohouye/article/details/52084770(转) Gcc的编译流程分为了四个步骤: 1.预处理,生成预编译文件(.文件): Gcc ...
- gcc 的编译流程 和gdb的调试方法
GCC的编译流程分为四个步骤: 预处理(Pre-Processing) 编译(Compiling) 汇编(Assembling) 链接(Linking) 可以看的出来文件大小 gdb 调试 gdb - ...
- gcc 简单编译流程
注意:GCC在链接时优先使用动态链接库,只有当动态链接库不存在时才考虑使用静态链接库,可在编译时加上-static选项,强制使用静态链接库. gcc -static 此选项将禁止使用动态库,所以,编 ...
- gcc编译流程
gcc的编译流程分为四个步骤,分别为: 预处理(Pre-Processing) 编译(Compiling) 汇编(Assembling) 链接(Linking) 以hello.c为例子,在这四个步骤中 ...
- GCC编译流程浅析
GCC-GCC编译流程浅析 序言 对于大多数程序员而言,大家都知道gcc是什么,但是如果不接触到linux平台下的开发,鲜有人真正了解gcc的编译流程,因为windows+IDE的开发模式简直是一条龙 ...
- GCC 编译流程简介
GCC-GCC编译流程 序言 对于大多数程序员而言,大家都知道gcc是什么,但是如果不接触到linux平台下的开发,鲜有人真正了解gcc的编译流程,因为windows+IDE的开发模式简直是一条龙全套 ...
- GCC编译流程及常用编辑命令
GCC 编译器在编译一个C语言程序时需要经过以下 4 步: 将C语言源程序预处理,生成.i文件. 预处理后的.i文件编译成为汇编语言,生成.s文件. 将汇编语言文件经过汇编,生成目标文件.o文件. 将 ...
- gcc 编译流程分析
//test.c #include<stdio.h> int main() { ,y=; printf("x=%d y=%d\n",x,y); ; } 1:预处理阶段, ...
- esp8266 SDK开发之编译流程
最近刚完成自己8266的小项目,已经发布在github上,有兴趣的朋友可以看一下 github地址:esp-ujn 1. 通过MQTT协议与服务器交互 2. 内置HTTP服务器,支持通过浏览器进行参数 ...
随机推荐
- CountDownLatch同步辅助类
CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待. 主要方法 public CountDownLatch(int count); pu ...
- kepware http接口 swift
读取某变量的值 import Foundation let headers = [ "Connection": "keep-alive", "Cach ...
- POJ2536 Gopher II(二分图最大匹配)
Gopher II Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 9005 Accepted: 3724 Descrip ...
- docker mac
官网上有安装方法.已安装成功. 容器千万不能随便删 现在已经不用boot2docker,使用dockertools来安装docker,dockertools中包含docker-machine,等等. ...
- 微信WeixinJSBridge API使用实例
http://www.jb51.net/article/66642.htm 这篇文章主要介绍了微信WeixinJSBridge API使用实例,本文直接给出HTML代码,代码中包含了很多实用功能,如图 ...
- Windows安装配置docker
如果是win10的,请在https://docs.docker.com/docker-for-windows/install/#download-docker-for-windows 下载Stable ...
- 查询字段描述sql-postgresql
查询字段描述sql SELECT 'comment on column ' || n.nspname ||'.'|| c.relname || '.' || a.attname ||' is '''| ...
- .NET MVC中如何使用手机验证码注册登陆
#region 手机验证码 /// <summary> /// /// </summary> /// <param name="Yonghushouji&quo ...
- spring cloud学习(一) 服务注册
首先spring-cloud相关的简介可以去百度搜索,这里就不多说了,这里分享一个翻译spring cloud官网的中文网站spring cloud中文网 这个学习项目的代码放在 https://gi ...
- 01-Python的基础知识3
- 数字 - 数字常量: - 整型: - 概念: - 指代平常数学上的整数常量.Python中整型指代int类型. - 基本运算: - 可以执行平常的+,-,*,/ ,%以及其他操作 假设a=15,b ...