MinGW安装与使用简介
安装方法:其实很简单,如下:
Step one: 到这里下载MinGW,网速慢的话可能打不开,是个外国网站(http://sourceforge.net/projects/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);
}
假如你想从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);
}
对于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);
}
假如你想从一个叫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);
把下面的代码复制并粘贴到一个叫dllfct.c的文件中:
#include <stdio.h>
#include "dllfct.h"
EXPORT void tstfunc (void)
{
printf ("Hellon");
}
把下面的代码复制并粘贴到一个叫hello.c的文件中:
#include "dllfct.h"
int main ()
{
tstfunc ();
return (0);
}
为了创建一个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
转载于:https://www.cnblogs.com/fujinliang/archive/2012/03/19/2405796.html
MinGW安装与使用简介相关推荐
- Tool/IDE之MinGW:MinGW(C++环境)的简介、安装、使用方法之详细攻略
Tool/IDE之MinGW:MinGW(C++环境)的简介.安装.使用方法之详细攻略 目录 MinGW的简介 MinGW的安装 1.安装 2.安装好后选择需要下载的安装包 3.配置环境变量 4.测试 ...
- MinGW安装和使用基础教程
MinGW全称Minimalist GNU For Windows,是个精简的Windows平台C/C++.ADA及Fortran编译器,相比Cygwin而言,体积要小很多,使用较为方便.MinGW提 ...
- codelite+mingw安装
本文着重说明如何在codelite里配置mingw,亲测有效,自己废了一晚上的时间,希望对有需要的有所帮助. 1. codelite安装 官方网站下载http://codelite.org/,我下载的 ...
- VB.net:VB.net编程语言学习之添加引用打包安装项目的简介、案例应用之详细攻略
VB.net:VB.net编程语言学习之添加引用&打包安装项目的简介.案例应用之详细攻略 目录 关于添加引用 1.SW的二次开发,需要引用多个Solidworks库文件即dll文件
- MinGW安装教程——著名C/C++编译器GCC的Windows版本
前言 本文主要讲述如何安装 C语言 编译器--MinGW,特点是文章附有完整详细的实际安装过程截图,文字反而起说明提示作用. 编写本文的原因始于我的一个观点:图片可以比文字传达更多的信息,也能让其他人 ...
- MinGW安装与环境变量配置和Sublime Text 3搭建C++编译环境
一.MinGW在Windows中的安装与配置: MinGW MinGW(Minimalist GNU For Windows)是个精简的Windows平台C/C++.ADA及Fortran编译器,相比 ...
- MinGW安装和使用
MinGW全称Minimalist GNU For Windows,是个精简的Windows平台C/C++.ADA及Fortran编译器,相比Cygwin而言,体积要小很多,使用较为方便.MinGW提 ...
- nginx之 nginx-1.9.7 编译安装、理论简介
nginx是一个web网站常用的高性能http和反向代理服务器,其具有较好的并发能力,被网易.百度.腾讯.新浪等网站广泛使用. 一. 理论简介 1.首先弄清楚正向代理和反向代理 正向代理:代理客户端, ...
- linux 查看libevent 安装目录,linux下libevent安装配置与简介 以及 linux库文件搜索路径的配置...
libevent简介 libevent是基于Reactor模式的I/O框架库,它具有良好的跨平台性和线程安全,它实现了统一事件源(即对I/O事件.信号和定时事件提供统一的处理).高性能分布式内存对象缓 ...
最新文章
- sh256sum、xxd、base64联合计算文件的hash
- 区块链来了|网贷业想尝鲜,全民记账让卷款跑路成为不可能!
- 浮点数转换为整数四舍五入_定义宏以将浮点值四舍五入为C中最接近的整数
- 基本类型理解巩固及补码原理总结
- 模具计算机辅助设计笔试题,模具CADCAM试卷
- net.sf.json与fastjson两种jar包的使用
- windows简单命令系统优化
- oracle中同义词的用法,Oracle中定义以及使用同义词的方法
- 夜思 | 听说你单身?“替代性恋爱”了解一下
- a += 1、a = a + 1、a++区别
- MyEclipse打不开项目下的jsp文件,或是打开jsp文件报错!
- 鼎捷T100 以客制批次作业为例,画面规格生成后编译程式报错问题
- 网易邮箱出现 FA_INVALID_SESSION
- 钢琴入门教程:钢琴的基础知识
- java像素鸟素材_像素鸟FlappyBird素材(图片+音乐)
- ae计算机配置要求,CG馒头分享AE cs6对电脑所需配置需求
- 算法是怎样一步步毁掉年轻人的世界的
- 机器学习推导合集01-霍夫丁不等式的推导 Hoeffding Inequality
- 有关于脉动调查的这些问题你都知道吗
- java math 弧度,Java Math.toRadians()角度转换为弧度