博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
项目介绍
阅读量:6226 次
发布时间:2019-06-21

本文共 3207 字,大约阅读时间需要 10 分钟。

hot3.png

  • http://msys2.github.io/

  • http://www.rswiki.org/%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1/msys2

 

MSYS2

简介

MSYS2 是MSYS的一个升级版,准确的说是集成了pacman和Mingw-w64的Cygwin升级版, 提供了bash shell等linux环境、版本控制软件(git/hg)和MinGW-w64 工具链。与MSYS最大的区别是移植了 Arch Linux的软件包管理系统 Pacman(其实是与Cygwin的区别)。

优点

  • 安装方便

  • 源速度还可以(修改下载镜像)

  • 自带软件和库较全且很新(对比mingw万年perl 5.8)

  • 自带pacman管理,可以使用pkgtool来makepkg,,完美集成arch折腾之魂

  • 使用mingw-w64工具链,可以编译32位或64位代码(需要之后装)

  • 中文支持好,可以直接输入和浏览中文目录

其他选择

  • MinGW:较小,运行速度快,但只能编译32位,gcc有低版本(可以配合mingw-w64,编译64位程序),中文支持差

  • Cygwin:较大,运行速度慢,网络不好的情况下安装成问题

  • TDM-GCC:不带bash等完整的环境,仅用于编译

安装

在 里选择32位或64位程序下载,一路next就行了,然后请参照部分

如果不想折腾且是64位的系统的,可以在我的上下载,直接解压到根目录,无需安装

使用时,进入mingw64_shell.bat 或者 mingw32_shell.bat 编译64位或者32位程序

下载安装后请首先更新程序,然后安装编译环境,默认不带编译器等工具链。

配置

换源

默认的源在有些地方速度还可以,教育网内速度一般,可以添加其他镜像提高速度,下面列举了已知的速度还可以源,请大家自己按照现有网速排序,现在有些开源镜像添加了msys2的源,感谢各个开源镜像站点!

编辑安装目录下 \etc\pacman.d\ 文件夹下 mirrorlist.msys 等三个文件,如下所示:

  • #### MSYS2 repository mirrorlist## Changed on 2014-11-15####中国科学技术大学开源软件镜像Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch##北京理工大学镜像Server = http://mirror.bit.edu.cn/msys2/REPOS/MSYS2/$arch## msys2.orgServer = http://repo.msys2.org/msys/$arch## Sourceforge.netServer = http://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
  • #### 64-bit Mingw-w64 repository mirrorlist## Changed on 2014-11-15####中国科学技术大学开源软件镜像Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64##北京理工大学镜像Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/x86_64## msys2.orgServer = http://repo.msys2.org/mingw/x86_64## Sourceforge.netServer = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
  • #### 32-bit Mingw-w64 repository mirrorlist## Changed on 2014-11-15####中国科学技术大学开源软件镜像Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686##北京理工大学镜像Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/i686## msys2.orgServer = http://repo.msys2.org/mingw/i686## Sourceforge.netServer = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686

更新

换源后,运行 pacman -Syu 更新所有工具,重启msys2(关了重开bat)即可

安装工具链

运行 pacman -S mingw-w64-x86_64-toolchain mingw-w64-i686-toolchain base-devel 选择需要的数字,使用空格隔开,按照提示即可.

或者分别安装mingw-w64make等工具

#安装32位pacman -S  mingw-w64-i686-gcc make#安装64位pacman -S  mingw-w64-w64-x86-gcc make

安装后需要启动对应的脚本,例如需要编译32位程序,启动 mingw32_shell.bat ,使用 msys2_shell.bat 无法启动 gcc等程序。

使用

pacman使用

参照Archlinux wiki

以下介绍常用的命令:

主要命令:

列出所有安装包

pacman -Sl

搜索安装包

pacman -Ss 安装包名称pacman -Sl | grep 安装包名称

卸载安装包

#删除单个软件包,保留其全部已经安装的依赖关系pacman -R 安装包名称#删除指定软件包,及其所有没有被其他已安装软件包使用的依赖关系:pacman -Rs 安装包名称#要删除软件包和所有依赖这个软件包的程序:pacman -Rsc 安装包名称

查看安装包

pacman -Q 安装包名称

清理缓存

#仅在确定当前安装的软件包足够稳定且不需要降级时才执行清理。旧版本的软件包能系统更新崩溃时派上用场pacman -Sc#清理所有缓存,但这样 pacman 在重装软件包时就只能重新下载了。除非空间不足,否则不应这么做pacman -Scc

升级

#1.更新软件包数据库pacman -Sy#2.检测MSYS2 核心库是否需要更新pacman -S --needed filesystem msys2-runtime bash libreadline libiconv libarchive libgpgme libcurl pacman ncurses libintl#3.如果上步更新了,重启bash#4.升级系统pacman -Su

本地库使用pacman管理

MSYS2集成了Arch的 makepkg 等工具,可以使用 makepkg-mingw 制作包,使用pacman管理本地库.流程如下:

cd ~#建立packages文件夹mkdir packages#进入文件夹cd packagesmkdir ${package-name}cd ${package-name}#新建PKGBUILD文件,请参照 /usr/share/pacman/PKGBUILD.proto 文件makepkg-mingw#安装pacman -U ${package-name}*.pkg.tar.xz

去掉libgcc_s_dw2-1.dll等

在make 后添加 LDFLAGS=-static

转载于:https://my.oschina.net/assange/blog/414524

你可能感兴趣的文章
python re模块findall()详解
查看>>
MSTest
查看>>
java 给任务传递参数
查看>>
oracle之 反向键索引
查看>>
mysql+keepalived 双主热备高可用
查看>>
Hive之 hive的三种使用方式(CLI、HWI、Thrift)
查看>>
DOM基础总结
查看>>
微信公众平台源码
查看>>
Struts2--HelloWord
查看>>
linux C学习笔记05--信号量与共享内存(进程同步)
查看>>
go-mysql,一个易用的mysql接口框架实现
查看>>
POJ3320 Jessica's Reading Problem【尺取法】
查看>>
201671010117 2016-2017-2《Java程序设计》第八周学习Java心得
查看>>
画廊视图(Gallery)的功能和用法
查看>>
自己动手编写一个VS插件(七)
查看>>
Android里面的Toast
查看>>
mysql双机热备的实现
查看>>
前加绩中国、信雅达高级全栈工程师:吴劲松
查看>>
-bash: pod: command not found 解决办法
查看>>
GCD hdu1695容斥原理
查看>>