【发布时间】:2010-11-10 08:46:30
【问题描述】:
GCC 是一个非常受人尊敬的多语言编译器(据我所知)。我无法确定的一件事是:是否可以在 Windows 上使用 GCC 像 Cygwin 或 MinGW 这样的额外内容?
我了解到,如果您在 Cygwin 上使用 GCC,则会依赖于 DLL。如果您将 GCC 与 MinGW 一起使用,则可以消除这种依赖关系,但您仍然必须拥有 MinGW 才能使用 GCC。
是否可以构建 GCC 并自行使用它,完全原生于 Windows?像微软的编译器?看完之后,我的猜测是没有的。但如果可能的话,我仍然想要更多信息。
如果不是,为什么 GCC 需要 Cygwin 或 MinGW 之类的环境? 我现在明白了。这是因为 GCC 需要 Unix/POSIX 环境。 为什么确实如此,但我仍然无法理解。
我确实找到了这个,它有帮助,但并没有真的回答我的问题:Why does GCC-Windows depend on cygwin?
为了完善我的问题,我猜我在尝试什么来理解为什么 GCC 不能独立存在——我只有“GCC.exe”。
【问题讨论】:
-
答案是意识形态的,弗兰克。就个人而言,我很高兴看到不依赖 Posix 的 Windows 的 gcc。
-
还有一点需要注意,当你发布一个使用 MSVC 构建的程序时,你仍然必须包含可再发布的库。使用 MinGW,您可以重新分发 mingwm10.dll。
-
@Mark 不,你没有。例如,我用 MinGW 编译的 CSVfix 工具只依赖于 MSVCRT.DLL,就像任何其他 Windows C/C++ 应用程序一样。
-
另外,如果您静态链接它们,则不必在 MSVC 中包含可再发行库。