它一直在使用 msys。有一个最近发现 msys2。而且msys2 配套的编译器是MinGW-w64。

就试着用了用,感觉还不错,这里把安装过程记录一下。

简单的说,MSYS2 是MSYS的一个升级版, 提供了bash shell, Autotools, 版本号控制软件和MinGW-w64 工具链。与MSYS最大的差别是移植了 Arch Linux的软件包管理系统 Pacman。有了 Pacman 升级系统,安装新软件包,还有解决软件包间的依赖问题就变得简单多了。

能够在这里查看MSYS2包含了哪些软件包:

https://github.com/Alexpux/MSYS2-packages

安装

msys2 的主页地址:

http://sourceforge.net/projects/msys2/

首先下载安装文件,我的系统是32位的,所下面载32位的安装包:

msys2-i686-20140910.exe

msys2 要求安装文件夹仅仅能有 ascii 字符而且不能有空格。我选择安装在:

C:/msys32

这样安装完后仅仅有最主要的系统,没有gcc开发环境。

执行例如以下命令能够打开一个bash shell:

msys2_shell.bat

剩下的工作都在这个bash shell下进行。

msys2 移植了Arch Linux 上的软件包管理系统 Pacman。有了包管理系统,升级、安装新的软件就非常easy了。 只是我一直在用redhat 系的linux,没有接触过 Pacman。学习新命令还是花了些时间。这里把一些常见的Pacman命令记录一下。

更新本地软件包

更新本地软件包数据库:

pacman -S --refresh

能够缩写为:pacman -Sy

然后升级软件包:

pacman -S --refresh --sysupgrade

能够缩写为:pacman -Syu

这里须要特别注意,不能写为:

pacman -Su

给出的理由例如以下,我水平太低。没全然理解是啥意思:

because all MSYS2 programs share the same address space for DLLs due to how MSYS2 (well, Cygwin) implements 'fork', and because any Pacman package (both MSYS2 and MinGW-w64 ones) may use MSYS2's bash to run a post-install script, issuing this command can cause these scripts to fail to run should any updated, core MSYS2 DLLs end up in a different location to where they were. For this reason, the safest procedure for updating MSYS2 is to do it in two stages;

首先更新MSYS2核心程序包:

pacman -S --needed filesystem msys2-runtime bash libreadline libiconv libarchive libgpgme libcurl pacman ncurses libintl

假设这一步更新了一些软件包,那么就须要关闭 msys2 然后再又一次执行例如以下两个批处理文件:

autorebase.bat

msys2_shell.bat

否则更新其它软件包是会报错。(看来MSYS2 还是有点弱,希望以后可以把这个问题改好了)

之后就能够用:

pacman -Su

更新系统的其它软件包了。

列出全部安装了的软件

pacman -Q --explicit

或者

pacman -Q -e

安装新的软件包

pacman -S <package_names|package_groups>

比方我要安装 gcc。那么运行:

pacman -S gcc

然后依照提示安装就能够了。

搜索软件包

非常多时候,我们不知道要依照的软件的准确名称,这时就要先查询软件包的名称。

pacman -Ss <name_pattern>

比方我想安装gcc相关的软件,那么能够这样搜索

pacman -Ss gcc

pacman -Q --groups

能够列出全部的软件组,在我这里运行的结果例如以下:

base bash

base bash-completion

base bsdcpio

base bsdtar

base bzip2

base catgets

base coreutils

base crypt

base curl

base dash

base file

base filesystem

base findutils

base flex

base gawk

base gcc-libs

base getopt

base grep

base gzip

base less

base lndir

base man-db

base mintty

base msys2-runtime

base ncurses

base pacman

base pacman-mirrors

base pkgfile

base rebase

base sed

base texinfo

base tzcode

base which

msys2-devel binutils

msys2-devel gcc

msys2-devel msys2-w32api-headers

msys2-devel msys2-w32api-runtime

compression bzip2

compression gzip

compression liblzo2

compression xz

libraries cloog

libraries gmp

libraries heimdal-libs

libraries icu

libraries isl

libraries libarchive

libraries libasprintf

libraries libbz2

libraries libcares

libraries libcatgets

libraries libcrypt

libraries libcurl

libraries libdb

libraries libexpat

libraries libffi

libraries libgdbm

libraries libgettextpo

libraries libgpg-error

libraries libgpgme

libraries libiconv

libraries libidn

libraries libintl

libraries liblzma

libraries liblzo2

libraries libmetalink

libraries libnettle

libraries libopenssl

libraries libp11-kit

libraries libpcre

libraries libpipeline

libraries libreadline

libraries libsqlite

libraries libssh2

libraries libtasn1

libraries libxml2

libraries mpc

libraries mpfr

libraries zlib

Database db

Database gdbm

base-devel file

base-devel flex

base-devel gawk

base-devel gettext

base-devel grep

base-devel groff

base-devel m4

base-devel pacman

base-devel perl

base-devel pkgfile

base-devel sed

base-devel texinfo

MSYS2-devel msys2-runtime-devel

删除一个软件包

pacman -R <package_names|package_groups>

版权声明:本文博客原创文章。博客,未经同意,不得转载。

msys2 安装注意事项的更多相关文章

  1. msys2安装

    最近在研究编译linux下的软件到windows环境中. 发现了一个比cygwin更好玩的东西,那就是msys2 其实之前也在试玩mingw和mingw64,2016-08-12,当时的最新版本,mi ...

  2. MSYS2 安装和配置

    MSYS2 安装和配置 msys2 和 cygwin 类似,提供了一个类 Linux 的 shell 环境和工具链,同时还使用了 arch linux 的 pacman 管理软件包,比 cygwin ...

  3. .NET Framework不同组件区别及安装注意事项

      发布时间:  2012/7/14 11:52:37 严格细分起来,.NET Framework又有两个不同的组件,.NET Framework可再发行组件包(23MB左右)和.NET Framew ...

  4. mysql数据库安装注意事项:

    mysql数据库安装注意事项: https://jingyan.baidu.com/article/642c9d34aa809a644a46f717.html(安装教程) 注意语言设置为gbk可以解决 ...

  5. SQL Server 2008 R2 安装注意事项

    上个星期自己第一次安装SQL Server 2008 R2,安装失败几次,结果用了将近1天的时间安装,最后成功了. 心得:1.安装SQL Server 2008 R2时,最好在第一次就安装成功.在百度 ...

  6. FileSync plugin for Eclipse 安装注意事项 Eclipse文件同步插件

    习惯了使用MyEclipse,各种插件不用自己安装,觉得开发起来很方便,现在大家都用Eclipse了,还有不用Eclipse用更高级的,IT当然开发大型项目没人用UltraEdit吧,虽然是一个不错的 ...

  7. ArcSDE 10.2 for Oracle 12C安装注意事项

    ArcSDE 10.2 for Oracle 12C安装注意事项 1.环境说明 从ArcSDE10.2.1开始支持Oracle 12C. 2.安装注意事项 SDE空间数据库可以安装到PDB中,使用Cr ...

  8. Composer如何安装(安装注意事项)

    Composer如何安装(安装注意事项) 一.总结 一句话总结:安装的时候主要看安装错误提示: 常见的错误有: a.php需要开启openssl配置.我们打开php目录下的php.ini.将opens ...

  9. 转:FileSync plugin for Eclipse 安装注意事项 Eclipse文件同步插件

    习惯了使用MyEclipse,各种插件不用自己安装,觉得开发起来很方便,现在大家都用Eclipse了,还有不用Eclipse用更高级的,IT当然开发大型项目没人用UltraEdit吧,虽然是一个不错的 ...

随机推荐

  1. Android Handler Message总结一下

    当应用程序启动时,会开启一个主线程(也就是UI线程).由她来管理UI.监听用户点击.来响应用户并分发事件等.所以一般在主线程中不要运行比較耗时的操作,如联网下载数据等,否则出现ANR错误.所以就将这些 ...

  2. 疯狂Java学习笔记(84)----------大约 Java 对象序列化,你不知道 5 事

    几年前,.当一个软件团队一起用 Java 书面申请.我认识比一般程序猿多知道一点关于 Java 对象序列化的知识所带来的优点. 关于本系列 您认为自己懂 Java 编程?其实,大多数程序猿对于 Jav ...

  3. [Windows Phone] 地图覆叠层控制项(MapOverlay )

    原文:[Windows Phone] 地图覆叠层控制项(MapOverlay ) 前言 当使用地图时,我们可能需要定位一些座标图示或是绘制一些文字线条,这时可以在地图上加上覆叠层进行绘制,在 Wind ...

  4. poj 3375 Network Connection

    今天在叉姐的群里找点题目做,这题目还是很好的:提意思如下 [有M个可以提供计算机网络的端口和N台计算机(计算机数量少于端口数),每个端口和计算机有一个坐标(一维的)!其中端口与计算机链接的距离 |x  ...

  5. 利用__index和__newindex实现默认值表、监控表、只读表(转)

    __index和__newindex实际上相当于是在读写表的时候分别加了一道过滤的逻辑,让读写表的操作可以被监控或说回调,利用这个特性可以实现一些带有特殊功能的表. 带有默认值的表: setdefau ...

  6. 妈蛋:kinMaxShow旋转木马异常,WebUploader图片上传坑爹,图像被压缩

    今天晚上在改造轮播图. 原来的代码是这种: <div> <img src="${static}/image/index/banner/`.jpg" /> & ...

  7. net搭建热插拔式web框架(沙箱的构建)

    net搭建热插拔式web框架(沙箱的构建) 上周五写了一个实现原理篇,在评论中看到有朋友也遇到了我的问题,真的是有种他乡遇知己的感觉,整个系列我一定会坚持写完,并在最后把代码开源到git中.上一篇文章 ...

  8. docker 真实---安装基本映像 (一)

    浸泡了几天的官方网站,正确docker有了更好的理解.准备着手建立一个公司的开发和测试环境,包含java.python. 环境介绍 首先说明一下我的环境 2物理server(以后简称为主机) 主机A配 ...

  9. struts2移除标签button的id传统的价值观念问题

    <!--显示数据列表--> <tbody id="TableData" class="dataContainer" datakey=" ...

  10. HDU 3415 Max Sum of Max-K-sub-sequence(单调队列)

    转载请注明出处:http://blog.csdn.net/u012860063 Max Sum of Max-K-sub-sequence Time Limit: 2000/1000 MS (Java ...