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. 深入浅出Java MVC(Model View Controller) ---- (JSP + servlet + javabean实例)

    在DRP中终于接触到了MVC,感触是确实这样的架构系统灵活性不少,现在感触最深的就是使用tomcat作为服务器发布比IIS好多了,起码发布很简单,使用起来方便. 首先来简单的学习一下MVC的基础知识, ...

  2. CUDA学习,使用shared memory实现Reverse Array

  3. 联发科安卓6.0项目的到来的第一个难题:tar的分包与并包

    tar 分包压缩与合并 今天是个高兴的日子,迎来了新项目----联发科平板.但是遇到了难题,tar的分包压缩与合并居然在资料书上找不 到,于是我赶紧百度,找到了相关资料. 在工程目录下遇到了大量的gz ...

  4. 【一天一道LeetCode】#98. Validate Binary Search Tree

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

  5. 使用go reflect实现一套简易的rpc框架

    go jsonrpc 在实际项目中,我们经常会碰到服务之间交互的情况,如何方便的与远端服务进行交互,就是一个需要我们考虑的问题. 通常,我们可以采用restful的编程方式,各个服务提供相应的web接 ...

  6. Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(下)Samba经典应用案例

    五.[Samba应用案例二] 设置Samba共享目录/software,允许用户jack和mary可以通过Windows客户端访问,并具有读写权限. 1.创建目录/software,添加用户jack, ...

  7. 仿滴滴抢单倒计时的Demo

    滴滴里面有一个下单完成之后等待界面的倒计时转圈的视图... 就是这个... 原理: 通过CAShapeLayer层添加到自己自定义的视图layer上... 设置ShapeLayer的path... 他 ...

  8. Python进阶 函数式编程和面向对象编程等

    函数式编程 函数:function 函数式:functional,一种编程范式.函数式编程是一种抽象计算机的编程模式. 函数!= 函数式(如计算!=计算机) 如下是不同语言的抽象 层次不同 高阶函数: ...

  9. 【一天一道LeetCode】#35. Search Insert Position

    一天一道LeetCode系列 (一)题目 Given a sorted array and a target value, return the index if the target is foun ...

  10. 《java入门第一季》之面向对象(面向对象案例详解)

    通过几个小案例理重新回顾一下前面所写的内容,对面向对象的理解更加深刻的目的: 案例一: /* 需求: 定义一个员工类,自己分析出几个成员, 然后给出成员变量,构造方法,getXxx()/setXxx( ...