• 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,即可运行程序

  • 相关阅读:
    Android MediaScanner 详尽分析
    你要清楚的东西
    Centos下搭建Apache+mysql+php
    Centos 安装MySQL全过程
    sdk platform tools is missing please user the sdk manager to install it
    尚书令
    文字
    ubuntu下mysql配置
    学习Android开发,配置环境,
    Sphinx全文索引安装教程
  • 原文地址:https://www.cnblogs.com/navysummer/p/9549301.html
Copyright © 2020-2023  润新知