操作系统

当前位置:金沙棋牌 > 操作系统 > 可以按照这个关键字搜索,MSYS2配置总结

可以按照这个关键字搜索,MSYS2配置总结

来源:http://www.logblo.com 作者:金沙棋牌 时间:2019-11-05 18:52

MSYS2下载:


先前平昔在用 msys,近些日子发觉还或许有个 msys2,而且msys2 配套的编写翻译器是MinGW-w64。 就试着用了用,感到还不易,这里把安装进度记录一下。

MSYS2是什么

  • MSYS2 (Minimal SYStem 2卡塔尔 是叁个MSYS的独自改写版本,首要用以 shell 命令行开辟条件。相同的时候它也是一个在Cygwin (POSIX 宽容性层卡塔 尔(阿拉伯语:قطر‎ 和 MinGW-w64(从"MinGW-生成"卡塔 尔(阿拉伯语:قطر‎功底上发生的,追求更加好的互操作性的 Windows 软件。
  • MSYS2 [1] 是MSYS的多个升任版,正确的就是集成了pacman和Mingw-w64的Cygwin晋级版, 提供了bash shell等linux情形、版本调节软件(git/hg卡塔 尔(阿拉伯语:قطر‎和MinGW-w64 工具链。与MSYS最大的界别是移植了 Arch Linux的软件包处理种类Pacman(其实是与Cygwin的不相同)。

//
msys2使用小结 | 知行近思
http://www.annhe.net/article-3482.html
MSYS2是MSYS的三个升高版,准确的乃是集成了pacman和Mingw-w64的Cygwin晋级版, 提供了bash shell等linux景况、版本调节软件(git/hg卡塔 尔(英语:State of Qatar)和MinGW-w64 工具链。与MSYS最大的区分是移植了 Arch Linux的软件包管理体系Pacman(其实是与Cygwin的差别)。[1]

简短的说,MSYS2 是MSYS的多个升高版, 提供了bash shell, Autotools, 版本调整软件和MinGW-w64 工具链。与MSYS最大的界别是移植了 Arch Linux的软件包管理种类 Pacman。有了 Pacman 进级系统,安装新软件包,还应该有消除软件包间的依赖难题就变得轻便多了。

特点

  • 安装方便
  • 自带 pacman 管理,能够利用 pkgtool 来 makepkg
  • 超级快的源速度(能够更正源地址卡塔 尔(阿拉伯语:قطر‎
  • 自带软件和库较全并且相比新
  • 利用mingw-w64工具链,能够编写翻译叁12位或69位代码(须求活动安装卡塔尔国
  • 华语匡助好,能够一向输入和浏览汉语目录

//
pacman查找安装软件
pacman -Ss #追寻软件
pacman -S #安装软件
pacman -Sl #列出帮助软件
pacman -Qi #查阅有些软件包新闻
pacman -Ql #列出软件包内容

能够在这里处查看MSYS2囊括了如何软件包:

一、MSYS2的MirrorList配置


1、改进msys2安装目录下的/etc/pacman.d文件夹里面包车型客车3个mirrorlist.*文件

[mirrorlist.mingw32]
#中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686/
#北京理工大学开源软件镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/i686
#清华大学开源软件镜像
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686
#日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/i686
Server = ftp://ftp.jaist.ac.jp/pub/sourceforge/m/ms/msys2/REPOS/MINGW/i686
Include = /etc/pacman.d/mirrorlist.mingw32

[mirrorlist.mingw64]
#中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
#北京理工大学开源软件镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/x86_64
#清华大学开源软件镜像
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64
#日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
Server = ftp://ftp.jaist.ac.jp/pub/sourceforge/m/ms/msys2/REPOS/MINGW/x86_64
Include = /etc/pacman.d/mirrorlist.mingw64

[mirrorlist.msys]
#中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch
#北京理工大学开源软件镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MSYS2/$arch
#清华大学开源软件镜像
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch
#日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
Server = ftp://ftp.jaist.ac.jp/pub/sourceforge/m/ms/msys2/REPOS/MSYS2/$arch
Include = /etc/pacman.d/mirrorlist.msys

//
接纳MSYS2/MinGW-w64景况编写翻译GNU Emacs | M-x Chris-An-Emacser
https://chriszheng.science/2015/03/19/Chinese-version-of-Emacs-building-guideline/
MSYS2是MS-Windows下编译自由/开源软件的贰个景况,衍生自Cygwin,也正是说它和Cygwin一样,编译出的顺序无法脱离Cygwin景况运维(其实正是离不开那些DLL文件)。但MSYS2有三个很牛的地点是它自带了MinGW-w64,MinGW-w64能够感觉是MinGW的进级版本,编写翻译出的次第是原生的Windows程序,最大的表征和名字如出意气风发辙,援助理编辑译出62个人的顺序。前段时间MSYS2和MinGW-w64开辟都很活泼,两个结合,既表达了MSYS2对*NIX世界的包容性,又能用MinGW-w64编写翻译原生代码,很爽,自带的包很丰裕,包处理选取Arch Linux用的Pacman,非常的有利。

金沙棋牌, 

2、校正/etc/pacman.conf,把上边注释行放手

XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u

一超大心说多了,总的来说,用MSYS2/MinGW-w64能方便的编写翻译自由/开源软件,这里大家用那一个组成来编写翻译陆14人的GNU Emacs,也便是项目Emacs-w64。

安装

 

msys2 的主页地址:

 

第一下载安装文件,笔者的类别是叁14位的,所以下载三十四个人的安装包:

msys2-i686-20140910.exe

 

msys2 供给安装目录只好有 ascii 字符并且不能够有空格。小编接收设置在:

C:/msys32

那样设置完后唯有最宗旨的连串,未有gcc开辟意况。运转如下命令能够打开叁个bash shell:

msys2_shell.bat

剩下的行事都在那么些bash shell下进展。

msys2 移植了Arch Linux 上的软件包管理连串 Pacman,有了包管理连串,进级、安装新的软件就超轻巧了。 可是笔者间接在用redhat 系的linux,未有接触过 Pacman,学习新命令依旧花了些日子。这里把部分广泛的Pacman命令记录一下。

3、更新软件包

pacman -Syu

履新本地软件包

修改本地软件包数据库:

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

履新系统的其余软件包了。

二、常用工具安装

//
从cygwin迁移到msys2的原由和步子 - 陌辞寒的技艺博客 - SegmentFault
https://segmentfault.com/a/1190000002789600
干什么从cygwin迁移到msys2
不可胜数Linux后,再利用Windows的话,cygwin基本是必得的。但cygwin有部分痛点:

列出具备安装了的软件

pacman -Q --explicit

或者

pacman -Q -e

1、查看工具套件

pacman -Sg

收获结果如下:

kf5
mingw-w64-i686-toolchain
mingw-w64-i686
mingw-w64-i686-gimp-plugins
mingw-w64-i686-qt4
mingw-w64-i686-qt
mingw-w64-i686-qt5
mingw-w64-i686-vulkan-devel
tesseract-data
mingw-w64-x86_64-toolchain
mingw-w64-x86_64
mingw-w64-x86_64-gimp-plugins
mingw-w64-x86_64-qt4
mingw-w64-x86_64-qt
mingw-w64-x86_64-qt5
mingw-w64-x86_64-vulkan-devel
libraries
development
base-devel
base
msys2-devel
compression
VCS
sys-utils
Database
net-utils
editors
python-modules
mingw-w64-cross-toolchain
mingw-w64-cross
MSYS2-devel
perl-modules

电动依据必要安装,日常较常用安装

pacman -S --noconfirm mingw-w64-x86_64-toolchain libraries development base-devel msys2-devel compression VCS sys-utils net-utils editors python-modules
pacman -S --noconfirm mingw-w64-cross mingw-w64-cross-toolchain

不曾贰个好用的包管理工具,无论是官方的setup.exe,照旧第三方的几个apt-cyg,都设有使用不方便人民群众和作用不全的题材:
setup.exe选包很费劲
apt-cyg和它的正视得卓殊安装
cygwin的已设置软件数据库不区分是间接设置的大概被重视的包,后生可畏旦装上想等卸载就只好协和手动分辨了
apt-cyg不帮忙软件升级操作,笔者要好丰裕了那些功效(goreliu/apt-cyg卡塔 尔(英语:State of Qatar),就算基本能用,但要么存在一些难点
cygwin的软件打包方式不便利,而且为合法软件商旅提交新的包须求走加邮件列表、发邮件、确认、上传等重重流水生产线
cygwin里不少软件的本子如故比较老的,譬喻git如故2.1.4版本的,晋级缓慢(二个好消息是python和ruby近些日子几天晋级到最新版本了,从前如故python 2.7.8/3.2.2、ruby 2.0.0,盼了久久卡塔 尔(阿拉伯语:قطر‎
而msys2基本上消除了那些难题:
行使从archlinux移植过来的pacman,成效生龙活虎体化,使用方便
PKGBUILD好写,用过archlinux的话无学习费用,为官方源提交新包能够直接在github发PPRADO
msys2里的软件总体是要比cygwin新的(二个特例,这段时间cygwin的ruby晋级到了流行的2.2,而msys2的也许2.1卡塔尔

安装新的软件包

pacman -S <package_names|package_groups>

比如自身要安装 gcc。那么施行:

pacman -S gcc 

然后遵照提示安装就足以了。

2、常用工具

  • 翻看可设置软件列表
pacman -Sl
  • 安装python
pacman -S --noconfirm mingw-w64-x86_64-python2 mingw-w64-x86_64-python2-setuptools mingw-w64-x86_64-python2-pip mingw-w64-x86_64-python2-ipython
pacman -S --noconfirm mingw-w64-x86_64-python3 mingw-w64-x86_64-python3-setuptools mingw-w64-x86_64-python3-pip mingw-w64-x86_64-python3-ipython
  • 设置python科学总结库
pacman -S --noconfirm mingw-w64-x86_64-python2-numpy mingw-w64-x86_64-python2-scipy mingw-w64-x86_64-python2-matplotlib mingw-w64-x86_64-python2-pandas
pacman -S --noconfirm mingw-w64-x86_64-python3-numpy mingw-w64-x86_64-python3-scipy mingw-w64-x86_64-python3-matplotlib mingw-w64-x86_64-python3-pandas
  • 设置具有python工具
pacman -Sl | grep mingw-w64-x86_64-python2 | awk '{print "pacman -S --noconfirm "$2}' > python2-all.sh
sh python2-all.sh
pacman -Sl | grep mingw-w64-x86_64-python3 | awk '{print "pacman -S --noconfirm "$2}' > python3-all.sh
sh python3-all.sh
  • 安装nodejs
pacman -S --noconfirm mingw-w64-x86_64-nodejs
  • 设置支持手册
pacman -S --noconfirm help2man man-db man-pages-posix
  • 安装zsh和git
pacman -S --noconfirm zsh git
  • 安装oh my zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
  • 启航张开zsh
vim .bashrc

在文书最终风姿浪漫行增添,当然也足以直接在命令行中实践

exec zsh
  • 安装vim
pacman -S --noconfirm vim
  • 超强vim配置文件
wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh | sh -x

利用pacman安装须要的软件

检索软件包

许多时候,咱们不知道要根据的软件的准确名称,这个时候将在先查询软件包的名号。

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 命令详整

Pacman 是贰个命令行工具,那象征当您试行上边包车型大巴授命时,必需在终端或调整台北开展。

剔除贰个软件包

pacman -R <package_names|package_groups>

 

1、更新系统

  • 在 Arch Linux 中,使用一条命令就能够对任何系统进行更新:
pacman -Syu
  • 若是你已经使用 pacman -Sy 将本地的包数据库与长途的仓库举行了一块儿,也能够只实行:
pacman -Su

2、安装包

pacman -S 包名 例如,执行 pacman -S firefox 将安装 Firefox。你也可以同时安装多个包,只需以空格分隔包名即可。
pacman -Sy 包名 与上面命令不同的是,该命令将在同步包数据库后再执行安装。
pacman -Sv 包名 在显示一些操作信息后执行安装。
pacman -U 安装本地包,其扩展名为 pkg.tar.gz。

3、删除包

pacman -R 包名 该命令将只删除包,不包含该包的依赖。
pacman -Rs 包名 在删除包的同时,也将删除其依赖。
pacman -Rd 包名 在删除包时不检查依赖。

4、搜索包

pacman -Ss 关键字 这将搜索含关键字的包。
pacman -Qi 包名 查看有关包的信息。
pacman -Ql 包名 列出该包的文件。

5、其余用法

pacman -Sw 包名 只下载包,不安装。
pacman -Sc Pacman 下载的包文件位于 /var/cache/pacman/pkg/ 目录。该命令将清理未安装的包文件。
pacman -Scc 清理所有的缓存文件。

有关 Pacman 尤其详实的用法,能够翻阅Pacman 的手册页

本文由金沙棋牌发布于操作系统,转载请注明出处:可以按照这个关键字搜索,MSYS2配置总结

关键词:

上一篇:没有了

下一篇:没有了