好吧,这是今天写的第二篇文章。我表示这篇才是今天的重头。(伪

半年之前曾经写过一篇关于MinGW和MSYS的手动安装的文章[1],到现在还是全站点击率最高的。(目前这篇文章是最高的。)好吧,侧面反映了MinGW确实是Win上比较难装的软件之一。GNU的东西就是这点最令人不爽,好好的软件弄个自动安装包就这么难么。。好吧,似乎他们听见了我们的抱怨,终于推出了新版的自动安装包!![2]

关于MinGW和MSYS的介绍请看之前我写的那篇文章:

http://www.swingworks.net/2010/03/mingw_msys_config/

【2012-05-02 更新】
开始安装之前,强烈建议你先阅读这部分的内容——如果你的网络条件不好(连sourceforge的速度很差),或者你想大幅加速你的安装过程并减少错误发生,这部分内容会很有用。否则如果你想体验原汁原味的安装过程,请跳过此段。

国内网络访问sourceforge的速度通常是非常慢的,要命的是MinGW没有提供离线完整包下载,而自动包的安装的过程中不会一一重试,于是
各种下载龟速甚至有ERROR发生。好在MinGW的安装路径留有一个cache目录,里面存放有所有下载下来的组件包且不会删除(即使卸载也会保留,如
果需要可以删掉来节省空间)。那样的话可以直接将所有需要的组件包先放入cache目录然后运行安装包就行了,方便快捷。

cache目录的位置在:
C:\MinGW\var\cache\mingw-get\packages
你可能需要先建立它的所有父目录再放入所有的组件包。

【2012-05-02更新】所有组件包的网盘下载(包含MinGW安装包):

http://pan.baidu.com/share/link?shareid=5378&uk=117832911
http://dl.dbank.com/c06qouk24k
解压密码是www.swingworks.net

如果已经安装了MinGW但有组件下载失败,也可以按上述操作然后重新运行安装包。

安装步骤:

1. 下载自动安装包,我个人下载的是最新的mingw-get-inst-20101030.exe,以下均以此为例。

http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/

2. 双击安装。Vista/Win7用户请右键用管理员身份安装。注意:请尽量装在默认的 C:\MinGW 下。不要问我为什么,这可以解决很多莫名其妙的错误。官网上的原话是[3]:

The recommended installation directory is C:\MinGW.
Unless you are very sure you know what you are doing, you should not
change this; in particular: never install MinGW into any directory which
includes spaces in its absolute path name.


点Next


选择第一项可以大幅减少接下来的下载量。如果你已经下载了我提供的完整包,请选择第一项


选“同意”


上面说过了,这里强烈建议不要改动


选择程序菜单的位置,默认即可


除了最后一项MSYS System Builder建议都勾上。
(2011-06-21注:新版的安装包已经去除了这一选项)


点Install开始安装


这一步开始下载所需要的组件压缩包。(2012-05-02更新:)如果出现ERROR,请在完成后勾选”Display mingw-get log”查看log文件,然后逐一用mingw-get install或mingw-get upgrade命令修复。要快速修复所有下载失败的包,请看本文的开头灰色段落。


完成

3. 设置环境变量。在Path变量的末尾加一项 C:\MinGW\bin 。设置成功后可以在Win自带的cmd窗口执行许多非bash only程序,比如gcc,比如mingw-get。

4. 启动MSYS Shell。注:默认的home目录在 C:\MinGW\msys\1.0\home 或 C:\MinGW\msys\1.0\home\用户名 下

注意,如果在第2步下载MSYS失败会造成shell无法启动,此时建议先在第3步的基础上打开cmd窗口输入:
>mingw-get install automake
如此可以重新安装 MSYS 并同时安装好 autoconf 和 automake 工具。

5. MSYS和cmd窗口都应该可以正常运行GNU命令了。


PS: 在Win7的任务栏上创建图标

MinGW在Win7的任务栏上并不能通过普通的右键固定来放置图标(真不知道这帮人怎么设计的程序)。如果你希望在Win7的任务栏上放一个MSYS的图标可以这样做:

先打开MSYS,在任务栏上右键固定:

关闭MSYS,对图标点击右键,右击”sh”点属性:

在“快捷方式”选项卡中将“目标”改成 C:\MinGW\msys\1.0\msys.bat:

如果需要修改图标,可以点击“更改图标…”,选择 C:\MinGW\msys\1.0\msys.ico。重启explorer看到刷新。

[1] MinGW 和 MSYS 的手动安装与环境配置. 摆动工坊. http://www.swingworks.net/2010/03/mingw_msys_config/
[2] MinGW – Minimalist GNU for Windows. sourceforge. http://sourceforge.net/projects/mingw/
[3] HOWTO Install the MinGW (GCC) Compiler Suite. MinGW.org. http://www.mingw.org/wiki/InstallationHOWTOforMinGW

MinGW和MSYS的自动安装 【转】的更多相关文章

  1. MinGW和MSYS项目是在一起的(翻译官网)

    翻译MinGW官网的首页,首页描述了MinGW和MSYS的基本情况. Home of the MinGW and MSYS Projects(我才知道,MinGW和MSYS项目是在一起的 -_-!) ...

  2. 下载更新文件后,调用安装器自动安装apk文件

    在更新操作时,下载新apk之后,往往需要自动安装新apk,用以下代码即可安装下载在本地的apk文件(apkFile) Intent intent = new Intent(); intent.setA ...

  3. mysql 自动备份和nginx自动安装脚本

    一.自动备份Mysql脚本: 如下脚本为mysql自动备份脚本,仅供参考,可以根据实际情况修改. #!/bin/sh #auto backup mysql #wugk #Define PATH定义变量 ...

  4. 转来的emacs配置文件,自动安装插件

    网上转来的emacs配置文件,便于自动安装插件,收藏起来 http://www.gogae.org/post-7/ EMACS是一个伪装成代码编辑器的操作系统. EMACS是一个非常强大的代码编辑器, ...

  5. linux系统PXE+Kickstart自动安装系统

    一.PXEPXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服 ...

  6. 实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结

    系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir / ...

  7. eclipse 手动/自动安装插件

    只要你的Eclipse的压缩包,一般为xxx.zip,其内部包含了对应的features和plugins文件夹,(不管是否还有content.jar和artifacts.jar)则都可以: 要么手动解 ...

  8. [转]C#创建服务及使用程序自动安装服务,.NET创建一个即是可执行程序又是Windows服务的exe

    写在前面 原文地址:C#创建服务及使用程序自动安装服务,.NET创建一个即是可执行程序又是Windows服务的exe 这篇文章躺在我的收藏夹中有很长一段时间了,今天闲着没事,就自己动手实践了一下.感觉 ...

  9. 使用Inno Setup 打包.NET程序,并自动安装.Net Framework

    使用Inno Setup 打包.NET程序,并自动安装.Net Framework http://www.cnblogs.com/xiaogangqq123/archive/2012/03/19/24 ...

随机推荐

  1. SharePoint自动化系列——通过PowerShell创建SharePoint Lists

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 代码如下(保存到本地ps1文件中,右键run with PowerShell即可): Add-PS ...

  2. dp之最长递增子序列模板poj3903

    最长递增子序列,Longest Increasing Subsequence 下面我们简记为 LIS.排序+LCS算法 以及 DP算法就忽略了,这两个太容易理解了. 假设存在一个序列d[1..9] = ...

  3. iOS 获取沙盒文件路径及 写入/删除 沙盒文件

    出于安全考虑,iOS系统的沙盒机制规定每个应用都只能访问当前沙盒目录下面的文件(也有例外,比如系统通讯录能在用户授权的情况下被第三方应用访问),这个规则把iOS系统的封闭性展现的淋漓尽致. 一.沙盒中 ...

  4. phalcon分页的处理

    由于项目是用phalcon做的,主要是处理api,也做些简单的web页面. 有一个页面是显示日志的,结果后来日志达到几万条后php内存爆了,查了一下代码, 居然是直接读出所有数据库数据,使用的\Pha ...

  5. Hibernate xml配置方法之联合主键

    1.StudentPK类,存放Student的联合主键,必须实现java.io.Serializable接口(为了序列化扩充移植),必须重写equals跟hashCode方法(为了确保唯一性) pub ...

  6. sqlserver 的一些好用的插件

    sqlserver 的一些好用的插件 1.http://www.red-gate.com/products/

  7. MyBatis 网络资料

    http://mybatis.github.io/mybatis-3/zh/index.html 官方文档例子 http://blog.csdn.net/rootsuper/article/detai ...

  8. redis4安装

    第一步官网下载 https://redis.io/ rz 上传或者直接wget   http://download.redis.io/releases/redis-4.0.2.tar.gz 2.将其下 ...

  9. windows rails new demo时候出错Make sure that `gem install mysql2 -v '0.3.15'` succeeds before bundling.

    rails new demo --database=mysql最后报错Gem files will remain installed in D:/BillFiles/rails_dev/Ruby193 ...

  10. 软件测试工具MonkeyTalk使用方法

    1.简单介绍 MonkeyTalk软件测试工具由两部分构成:MonkeyTalk IDE 和 MonkeyTalk Agents MonkeyTalk IDE是Eclipse平台的工具,工能是:对iO ...