Windows 上适用于 Linux 的 C++ 编译器? [关闭]

Posted

技术标签:

【中文标题】Windows 上适用于 Linux 的 C++ 编译器? [关闭]【英文标题】:C++ compiler for Linux on Windows? [closed] 【发布时间】:2016-01-18 12:21:57 【问题描述】:

我完全知道this question 要求同样的事情。这个问题已经结束并且相当老了。接受的答案表明制作你自己的交叉编译器的相当复杂的方法,它需要cygwin。

也许现在还有其他更简单的方法可以做到这一点?

【问题讨论】:

Linux 虚拟机?直接从发行版存储库中获取您需要的所有工具。 @BoBTFish 即使我的目标是 ARM Linux?像 RPi 这样的东西? 【参考方案1】:

其实是有的。 如果你想在 ARM 上交叉编译 linux,你可以使用 linaro toolchain,它适用于 windows。它不需要cygwin。

如果你想在 x86 上为 linux 进行交叉编译,那就有点问题了。我知道的唯一现成的工具链(除了answer 中的预构建解决方案)是英特尔爱迪生的“交叉编译工具”(here)。它有一些缺点:

    它将编译 32 位 linux 二进制文件 Windows 64 位版本需要 cygwin Windows 32 位版本不需要 cygwin,但包含区分大小写的文件名(即,有些文件的名称只是大小写不同,Windows 会将它们视为同一个文件)。您可能需要make your Windows case-sensitive。

Windows 二进制文件将位于“sysroots\x86_64-pokysdk-mingw32\usr\bin\i586-poky-linux”

要使用 edison 工具链,您必须为其提供用于编译和链接的 sysroot 选项,如下所示:

"i586-poky-linux-g++.exe" --sysroot=../../../../core2-32-poky-linux

【讨论】:

我们正在使用 linaro 工具链与 Visual Studio 的“VisualGDB”插件一起工作。这不是我会做的方式,但它确实有效。 我没有注意到您已经回答了自己的问题。有点。虽然 ELLCC 可以为 ARM 和 x86_64 Linux 编译。一个下载/一套工具。【参考方案2】:

ELLCC 在 Windows、Linux 和 Mac 上以 binary download 的形式提供。它不需要 cygwin,并且可以为包括 ARM 在内的多个目标构建 Linux 程序。它基于 clang/LLVM 编译器。

【讨论】:

我从来没有用过clang,所以我什至没有尝试用谷歌搜索它。谢谢,我试试看。

以上是关于Windows 上适用于 Linux 的 C++ 编译器? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

是否有一种标准方法来捕获适用于 linux 和 windows 的 c++ 应用程序中的键盘输入?

在 Windows 10 上安装适用于 C++ 的 tesseract

我应该在 Windows 上为 C++ 使用哪个 IDE? [关闭]

Linux:作为共享对象 API 的 C++ 抽象类

C++ 服务器 Linux 机器上的分段错误 - 适用于 Mac

在适用于 Linux 的 Windows 子系统上安装 Apache