是否可以交叉编译 MIPS 的 D 源代码?

发布于 2024-11-14 03:15:42 字数 314 浏览 7 评论 0原文

是否可以交叉编译 MIPS 的 D 源代码?

比如我想编译一个D“Hello, world”。将在基于 TI AR7 的设备上运行的程序,这些设备具有 MIPS32 处理器,通常运行带有 MontaVista 补丁和 uClibc 的 Linux 2.4.17 内核(使用 MIPS I 通用目标;ELF 32 位 LSB 可执行文件、MIPS、MIPS-I 版本 1系统V)。

http://en.wikipedia.org/wiki/TI-AR7

Is it possible to cross-compile D source code for MIPS?

For example, I want to compile a D "Hello, world." program that will run on TI AR7-based devices, which have MIPS32 processor and typically run Linux 2.4.17 kernel with MontaVista patches and uClibc (using the MIPS I generic target; ELF 32-bit LSB executable, MIPS, MIPS-I version 1 SYSV).

http://en.wikipedia.org/wiki/TI-AR7

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

聆听风音 2024-11-21 03:15:42

参考编译器 DMD 不会生成 MIPS 代码,因此您必须使用 GDCLDC2 ,它们支持为其后端支持的任何架构生成代码(分别是 GCCLLVM)。

然而,这并不像生成代码那么简单。为了使 D 的所有功能都可用,您需要将 druntimephobos 移植到 MIPS,因为 druntime 是特定于体系结构的。如果没有它,您将无法使用 GC 及其所需的所有功能。

所以这是可能的,但可能性有多大绝对取决于你的专注程度。

The reference compiler, DMD, does not generate MIPS code, so you'll have to use GDC and LDC2, which support generating code for whatever architectures their backends support (GCC and LLVM, respectively).

However, it's not a simple as generating the code. To get all of D's features workable, you'll need to port druntime and phobos to MIPS, as druntime is quite architecture specific. Without that, you'll be stuck without a GC, and all the features that entails.

So it is possible, but how possible definitely depends on how dedicated you are.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文