Cygwin是一个类似Unix的环境和Microsoft Windows命令行界面。
我在维基百科上找到了上述这一行,但这是什么意思? 我对MinGW,cygwin和msys没有明确的想法,请帮助
答案 0 :(得分:14)
因为它让人们感到困惑:
Cygwin:把它想象成一个操作系统。它提供了一个基于Windows构建的POSIX C运行时,因此您可以编译大多数Unix软件以在其上运行。它带有GCC,在某种程度上,你可以从Cygwin中调用Win32 API,虽然我不确定它是否会发生或根本不起作用。
MSYS(2):Cygwin的一个分支,它具有路径转换魔法,使本机Windows程序可以很好地与它一起工作。它的主要目标是提供一个shell,以便您可以运行autotools配置脚本。您根本不打算构建MSYS应用程序。请注意,MSYS2需要更多功能,并且包含一个完整的软件包管理系统,因此您可以轻松安装MinGW-w64库和工具。
MinGW(-w64):GCC编译器的本机Windows端口,包括Win32 API头文件和库。它包含一个小的POSIX兼容层(通过例如winpthreads,unistd.h头和其他一些位),但是你不能用这个编译POSIX软件。与MSVC相比,这是最好的,MSVC也使用Win32 API生成本机代码。
请注意,在Cygwin上运行的MinGW-w64交叉编译器。有了MSYS2,我坦率地没有看到这样做的充分理由。如果您打算使用Cygwin,也可以使用Linux运行VM。
答案 1 :(得分:3)
或多或少来自web page
cygwin是
简而言之,如果你有一个linux源码,你可以尝试重新编译cygwin并能够在windows上运行它......
这使得可以访问许多典型的unix命令(shell,gcc / g ++,find ....)
替代方案是: