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. Android4.4.2KK竖屏强制更改为横屏的初步简略方案

    点击打开链接 解决方案: 当前是根据当前问题场景即竖屏强制更改为横屏的需求而做的改动,基本是hardcode定义的状态,总共修改有效代码行数5行,如果后续有其他需求或者需要更灵活的配置横屏和竖屏,可以 ...

  2. Chapter 2 User Authentication, Authorization, and Security(2):创建登录帐号

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/38705965,专题目录:http://blog.csdn.net/dba_huangzj ...

  3. 【一天一道LeetCode】#70. Climbing Stairs

    一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 You are ...

  4. Device tree customization

    Step 1: OEMs can create their own device tree by adding "qcom,msm-id/qcom,board-id" entry ...

  5. 手把手教你打造一个心电图效果View Android自定义View

    大家好,看我像不像蘑菇-因为我在学校呆的发霉了. 思而不学则殆 丽丽说得对,我有奇怪的疑问,大都是思而不学造成的,在我书读不够的情况下想太多,大多等于白想,所以革命没成功,同志仍需努力. 好了废话不说 ...

  6. Dynamics CRM 通过OData查询数据URI中包含中文的情况

    filter条件如下"?$filter=new_name eq '采购主管' and new_entityname eq 'new_purchaseenquiry' ",如果用这个 ...

  7. Linux进程状态解析之R、S、D、T、Z、X

    文章转载自:http://hi.baidu.com/shining_pc/item/21abcb32a4d2d484c3cf2950 Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程 ...

  8. SpriteBuilder给节点添加effect在32设备上发生crash

    环境为 Xcode 6.4 , cocos2D 3.0.4 , SpriteBuilder 1.4.9 在给某一节点添加Effect后,运行在真机iphone4s上发生崩溃,显示为: 可以看到整个堆栈 ...

  9. [面试算法题]比较二叉树异同-leetcode学习之旅(5)

    问题描述 Given two binary trees, write a function to check if they are equal or not. Two binary trees ar ...

  10. Android OnLowMemory和OnTrimMemory

    1.OnLowMemory 是Android提供的API,在系统内存不足,所有后台程序(优先级为background的进程,不是指后台运行的进程)都被杀死时,系统会调用OnLowMemory. 系统提 ...