Windows下使用MinGW在命令行编译运行C++程序
之前学习C语言的时候都是用IDE类似CodeBlocks的工具写完直接编译运行的,今天突然心血来潮,自己下一个编译器,在命令行下,编译运行C++程序,了解一下编译过程。
一.安装编译器
首先你需要下载一个编译器,我选择的是GNU的mingw,附上下载地址https://sourceforge.net/projects/mingw/
最开始选择的是在线安装,但是因为网速太慢,安装速度感人,所以最后下载了压缩包。将压缩包解压,然后在系统环境变量中配置一下bin目录的路径即可。在命令行中使用命令gcc -v来测试是否配置成功。
二.编辑代码
首先通过命令行进入你准备要创建文件的目录下,然后通过记事本notepad命令创建并打开test.cpp,如果当前目录下有test.cpp会直接打开文件,如果没有会先创建文件再打开。
开始写一段C++程序
三.编译过程
编译过程分为四个步骤:预处理、编译、汇编、链接。
1.预处理
预处理主要处理源文件中的“#include”、“#define”等预处理命令
预处理主要完成的工作有:
(1)删除#define,展开宏;
(2)处理条件编译指令,预处理程序先判断条件,在根据条件修改源代码;
(3)删除注释;
(4)添加行号,以及文件名标识,便于调试
(5)删除“#include”,插入相应的头文件;
使用g++ -E test.cpp -o test.i命令,预处理后得到test.i文件
2.编译
生成汇编代码的过程,使用命令g++ -S test.i -o test.s生成汇编文件test.s文件,当然直接从test.cpp文件得到汇编文件也可以。
3.汇编
将汇编代码转化成机器指令,生成目标二进制代码。
使用命令g++ -c test.s -o test.o 生成test.o文件
4.链接
通过链接库文件,将目标文件转化成可执行文件
使用命令g++ test.o -o test.exe -L 所需库文件路径 其中L为link的缩写
当然,一般情况下,可以直接使用g++ test.cpp -o test 就可以生成可执行程序了。
四.运行程序
最后使用命令test.exe,即可运行程序
最新文章
- 简单设置,解决使用webpack前后端跨域发送cookie的问题
- php抽象工厂模式的研究
- Hadoop虽然强大,但不是万能的(CSDN)
- Treap和名次树
- ubuntu中一些配置文件含义
- Linux Runtime PM介绍【转】
- java中MessageDigest加密工具类
- Java程序员的发展前景
- java poi 导入excel
- angular4.0单个标签不能同时使用ngFor和ngIf
- 【Java基础】【14正则表达式&;常用工具类】
- P4177 [CEOI2008]order(网络流)最大权闭合子图
- HttpServletRequest.getContextPath()取得的路径
- oracle数据库的简单操作
- RedisCacheManager设置Value序列化器技巧
- 另辟蹊径 直取通州的“墨迹天气”APP应用的成功故事
- Bitfinex API
- lzo文件压缩,解压
- python之函数的参数
- SqlServer存储过程(增删改查)