MinGW

安装与使用简介

安装方法:其实很简单,如下:

Step one:

到这里下载

MinGW,

网速慢的话可能打不开,

是个外国网站

(上面的网站镜像可能

出了点问题

,

有的东西下载下来却不能用

,

等我有空我会给大家提供下载)

Step two :

双击安装包,一切按默认设置,一路的“下一步”以后就能搞定。

Step

three:

环境变量可能会在安装过程中自动设置好,在

cmd

中输入

gcc

测试一下,假如显

gcc: no input file

,则安装已成功。否则,自己把

c:/mingw/bin

的目录手动加到环境变量

中,方法如下(很简单的哟,没必要害怕嘛)

1.

右键“我的电脑”

==>

属性

==>

“高级”

==>

“环境变量”

2.

在用户变量中,假如有

path

变量,就选择“编辑”

,在原先值后面加个分号,在把

MinGW

bin

目录加上就好了。

假如没有

path

就自己

“新建”

一个,

再把

MinGW

bin

目录加上。

3.

测试方法同上,

over

这里是英文用法

,

高手请看,下面是我的翻译,仅供参考,翻译不得当的地方请不吝指出。

使用

MinGW

进行编译和创建(应有程序)

怎样创建一个终端应用程序

这里有一个例子。

下面是一个简单的

c

语言程序的代码示例,

请把它剪切并粘贴到一个叫作

hello.c

的文件中试试看

#include <stdio.h> 

int main(int argc, char **argv) 

{ 

printf ("Hellon"); 

return (0); 

} 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

假如你想从

hello.c

生成一个在终端模式下的可执行文件

hello.exe.

试一下下面的方法:

gcc -c hello.c

这个命令把

hello.c

编译成一个目标文件

hello.o,

然后用下面的方法:

gcc -o hello hello.o

这个命令从

hello.o

文件生成一个可执行的

hello.exe

文件。事实上,作为一种选择,你可以

使用下面的命令把编译和链接放到一步中完成:

gcc -o hello hello.c

下面是一个简单的

c++

程序的代码示例,复制并粘贴到一个叫

hello.cpp

的文件中试试看:

#include <iostream> 

int main(int argc, char **argv) 

{ 

std::cout << "Hello" << std::endl; 

return (0); 

} 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

对于

c++

程序来说,使用下面的命令来编译和链接:

g++ -c hello.cpp

g++ -o hello hello.o

(同样你可以把他们合并到一步中完成)

2.

如何创建

windows

应用程序

这里有一个例子。下面是一个简单的

windows

应用程序的代码示例,请把它复制并粘贴到

一个叫作

hello.c

的文件中试试看

:

#include <windows.h> 

int WINAPI WinMain (HINSTANCE hInstance, 

HINSTANCE hPrevInstance, 

PSTR szCmdLine, 

int iCmdShow) 

{ 

MessageBox (NULL, "Hello", "Hello Demo", MB_OK); 

return (0); 

} 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

假如你想从一个叫

hello.c

c

语言源文件创建一个从窗体执行的(

Windows

executable

hello.exe,

请试用下列命令:

gcc -c hello.c

首先产生了目标文件

hello.o,

然后用:

gcc -o hello hello.o -mwindows

这会从

hello.o

创建一个可执行的

hello.exe, -mwindows

用来说明要创建的是

Windows

应用程

序而非从终端执行的程序,它确保正确的

Windows

库被链接。

要同时得到一个终端屏幕和标准的

Windows

应用程序,在

-mwindows

标志后面增加一个

-mconsole

标志(

flag

假如你有新的资源(一个后缀名为

.rc

的文件)也要添加到你的程序中

,

你需要编译这些资源

文件

resource file

和别的一些资源文件,

并且在链接时包含进这些编译过的资源文件以创

建你的程序

,

下面的例子将告诉你怎样编译和链接一个叫做

resfile.rc

的资源文件:

windres -o resfile.o resfile.rc

gcc -o hello hello.o resfile.o -mwindows

3.

怎样创建

dll

文件

?

这里有个例子。把下面的代码复制并粘贴到一个叫

dllfct.h

的文件中:

#ifdef BUILD_DLL 

// the dll exports 

#define EXPORT __declspec(dllexport) 

#else 

// the exe imports 

#define EXPORT __declspec(dllimport) 

#endif 

// function to be imported/exported 

EXPORT void tstfunc (void); 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

把下面的代码复制并粘贴到一个叫

dllfct.c

的文件中

:

#include <stdio.h> 

#include "dllfct.h" 

EXPORT void tstfunc (void) 

{ 

printf ("Hellon"); 

} 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

把下面的代码复制并粘贴到一个叫

hello.c

的文件中

:

#include "dllfct.h" 

int main () 

{ 

tstfunc (); 

return (0); 

} 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

为了创建一个

dll

和一个使用他的程序,试试下面的命令:

gcc -c hello.c

gcc -c -DBUILD_DLL dllfct.c gcc -shared -o tst.dll -Wl,--out-implib,libtstdll.a dllfct.o

gcc -o hello.exe hello.o -L./ -ltstdll

MinGW安装与使用简介的更多相关文章

  1. MinGW安装教程

    首先说明一下 1) MinGw只是其中一种GCC编译环境的安装程序,还有像Cygwin也是差不多的; 2) 由于安装的时候有些地方忘了截图,所以图有些是借鉴别人的; 3) 还要就是安装MinGw,最好 ...

  2. Spotlight on Mysql在Windows平台下的安装及使用简介

    Spotlight on Mysql在Windows平台下的安装及使用简介   by:授客 QQ:1033553122 1.   测试环境 Win7 64位 mysql-connector-odbc- ...

  3. MinGW安装教程——著名C/C++编译器GCC的Windows版本

    前言本文主要讲述如何安装 C语言 编译器——MinGW,特点是文章附有完整详细的实际安装过程截图,文字反而起说明提示作用. 编写本文的原因始于我的一个观点:图片可以比文字传达更多的信息,也能让其他人更 ...

  4. MinGW安装与环境变量配置和Sublime Text 2搭建C++编译环境

    MinGW安装与环境变量配置 从http://sourceforge.net/projects/mingw/下载MinGW,安装到D:\MinGW.工具集选择安装(之后还可以进行安装卸载):至少需要安 ...

  5. MinGW安装图文教程以及如何配置C语音编程环境

    MinGW安装图文教程以及如何配置C语音编程环境 转载自:http://www.jb51.net/softjc/192017.html MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序 ...

  6. MinGW - 安装和配置 / MinGW - Howto Install And Configure

    MinGW在线安装程序下载地址:http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get- ...

  7. MinGW安装和使用基础教程

    MinGW全称Minimalist GNU For Windows,是个精简的Windows平台C/C++.ADA及Fortran编译器,相比Cygwin而言,体积要小很多,使用较为方便.MinGW提 ...

  8. MinGW安装和使用(不是mingw-w32)

    MinGW全称Minimalist GNU For Windows,是个精简的Windows平台C/C++.ADA及Fortran编译器,相比Cygwin而言,体积要小很多,使用较为方便.MinGW提 ...

  9. Eclipse IDE for C/C++ Developers和MinGW安装配置C/C++开发学习环境详解

    Eclipse IDE for C/C++ Developers和MinGW安装配置C/C++开发学习环境详解 操作系统:Windows 7 JDK版本:1.6.0_33 Eclipse版本:Juno ...

随机推荐

  1. Mpg123源代码详解

    Mpg123与libmad一样,支持mpeg1,2,2.5音频解码.目前来看mpg123比libmad支持了网络播放功能.而且libmad基本上开源社区在2005年左右,基本停止更新,mpg123至今 ...

  2. ubuntu权限管理常用命令

    1.chmod 第一种方式 chomd [{ugoa}{+-=}{rwx}] [文件或者目录] u 代表该文件所属用户 g 代表该文件所属用户组 o 代表访客 a 代表所有用户 +-=分别表示增加权限 ...

  3. SQL Sever2005卸载问题解决措施

      在安装SQLServer 2005时,曾遇到过SQL database service不能安装类似问题,曾经花费3个小时时间,最终将其安装成功.将其大概纠错过程记录如下,以作为前车之鉴.      ...

  4. 《C语言点滴》书评

    说起C语言方面的书,你最先想到的是哪一本?不论图书本身是好是坏,反正我想到的是谭浩强的<C程序设计>--它已然是一部"圣经"了.那么,为什么赵岩老师还要写一本<C ...

  5. 并发编程(三): 使用C++11实现无锁stack(lock-free stack)

    前几篇文章,我们讨论了如何使用mutex保护数据及使用使用condition variable在多线程中进行同步.然而,使用mutex将会导致一下问题: 等待互斥锁会消耗宝贵的时间 - 有时候是很多时 ...

  6. LINUX0.11 内核阅读笔记

    一.源码目录 图1 二.系统总体流程: 系统从boot开始动作,把内核从启动盘装到正确的位置,进行一些基本的初始化,如检测内存,保护模式相关,建立页目录和内存页表,GDT表,IDT表.然后进入main ...

  7. 用SpriteBuilder简化"耕牛遍地走"的动画效果(三)

    接下来的代码和原文差不多,建立一个数组用来存放动画帧,然后用数组来初始化一个CCAnimation动画对象.接着将牛放在屏幕中心,然后运行动画: NSMutableArray *walkAnimFra ...

  8. Linux之命令的组合

    在Linux下有好多经典的操作,其中尤为经典的是命令的组合,不管是作为参数,还是命令之间的配合,都做得比较完善.下面看一下常用的一些命令吧. 1.连续运行多个命令就可以使用':'作为分隔,但是缺点就是 ...

  9. android 签名

    (1)Android Studio菜单Build->Generate Signed APK (2)弹出窗口 (3)创建密钥库及密钥,创建后会自动选择刚创建的密钥库和密钥(已拥有密钥库跳过)    ...

  10. c++中各个数据类型的大小

    来哦金额各种数据类型有助于我们对这门语言的更好掌握,更好的利用之来编程,下面是一个简单的获得数据类型的大小的程序,虽然简单,但实用性却很高. #include <iostream> usi ...