赞
踩
编写完成一个C/C++程序后,想要运行起来,必须要经过四个步骤:预处理、编译、汇编和链接。每个步骤都会生成对应的文件,如下图所示(注意后缀名):\n\n第3节将通过一个简易C++工程演示图中的全过程,并解释细节。\n\n2.名词解释\n为了后面过程的介绍更方便,这里对C++编译过程中涉及的一些常用名词进行解释。\n\n2.1 GCC、GNU、gcc与g++\nGNU:一个操作系统,具体内容不重要,感兴趣可以参考:GCC、GNU到底啥意思?\nGCC:GNU Compiler Collection(GNU编译器集合)的缩写,可以理解为一组GNU操作系统中的编译器集合,可以用于编译C、C++、Java、Go、Fortan、Pascal、Objective-C等语言。\ngcc:GCC(编译器集合)中的GNU C Compiler(C 编译器)\ng++:GCC(编译器集合)中的GNU C++ Compiler(C++ 编译器)\n简单来说,gcc调用了GCC中的C Compiler,而g++调用了GCC中的C++ Compiler。\n\n对于 *.c 和 *.cpp 文件,gcc分别当作 c 和 cpp文件编译,而g++则统一当作cpp文件编译。\n2.2 代码编译命令\ngcc/g++常用命令:\n\n指令选项\t功能\n-E(注意大写)\t预处理(Preprocess)指定的源文件,但不进行编译(Compile),这一步生成 *.i 文本文件\n-S(注意大写)\t编译指定的源文件,但不进行汇编(Assemble),这一步生成 *.s 汇编文件\n-c\t编译、汇编指定的源文件,但不进行链接(Link),这一步生成 *.o 目标文件\n-o\t指定生成文件的文件名\n-I lib\tlib表示库文件或头文件目录,该指令选项用于手动链接程序可以调用的库文件、头文件\n-std=\t手动指定编程语言标准
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。