首页 文章

MSYS2和Cygwin之间的差异[关闭]

提问于
浏览
44

传统上,MSYS bash被认为不如Cygwin bash . 前者是MinGW内部用于运行autoconf脚本的辅助工具 . 但现在有MinGW-w64和MSYS2 . 后者附带了像包管理器这样的甜蜜的pacman和像zsh这样的优雅shell,所以我想知道仿真层是否还有差距 .

虽然MinGW *应用程序是Windows本机可执行文件,但MSYS2软件需要POSIX仿真层,就像Cygwin一样 . 至少对于一个随意的用户来说,很难发现两者之间的差异 .

  • 两个仿真层(如果有)之间的功能差异是什么?

  • 哪种仿真更快(效率更高)?

2 回答

  • 9

    传统上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的优势 .

  • 52

    据我所知,MSYS2是Cygwin的一个分支,其主要目标是提供使用MinGW-w64软件包的可能性 . 该目标是以可用软件总数为代价实现的 . 比较MSYS2Cygwin的列表 .

    基本上,就是这样 . 因此,虽然您不需要在MinGW-w64下编译某些内容,但您几乎没有理由使用MSYS2而不是原始的Cygwin .

相关问题