传统上,MSYS bash被认为不如Cygwin bash。 前者是MinGW内部用于运行autoconf脚本的辅助工具。 但现在有MinGW-w64和MSYS2。后者附带了像包管理器这样的甜蜜的pacman和像zsh这样的优雅shell,所以我想知道仿真层是否还有差距。
虽然MinGW *应用程序是Windows本机可执行文件,但MSYS2软件需要POSIX仿真层,就像Cygwin一样。至少对于一个随意的用户来说,很难发现两者之间的差异。
答案 0 :(得分:52)
传统上MSYS bash一直处于劣势,但主要是因为Cygwin仍在积极开发中,而MSYS则没有。 MSYS从Cygwin版本1.3.3派生而且从未重新同步,而MSYS2定期与Cygwin项目重新同步。
我们没有像包管理员这样的“甜蜜的pacman”,我们可以直接重新编译Arch Linux的pacman包管理器。
MSYS2没有cygwin.dll,但它确实有msys-2.0.dll,它做同样的事情(还有一些)。特别是,看起来像路径和PATH环境的参数。运行Windows本机软件时,var将转换为Windows窗体。
至于它是否较慢,我预计会有很小的差异,但由于额外的转换工作,MSYS2会变慢一点。再说一次,你可能会在MSYS2中运行更多的Windows本机软件(例如MinGW-w64编译器),而不是从Cygwin运行这样的软件,这样就可以在MSYS2中有所改变。
答案 1 :(得分:9)