在 Windows 上使用自定义交叉编译器为 arm 编译 v8

Posted

技术标签:

【中文标题】在 Windows 上使用自定义交叉编译器为 arm 编译 v8【英文标题】:Compile v8 for arm with custom cross-compiler on Windows 【发布时间】:2012-07-02 12:32:14 【问题描述】:

我想编译一个静态 v8 版本以在嵌入式设备上使用。

制造设备的公司给了我们一个基于cygwin的交叉编译器(设备使用基于Linux的操作系统),这样我们就可以在windows平台上编写和编译代码,然后再将其传输到设备上。

我看到的所有关于在 arm 系统(如 scratchbox)上编译 V8 的教程,除非它们针对的是 arm 模拟器。在技​​术上是否可以像我为 windows 编译它一样只编译 V8,只使用我们自己用于编译的自定义 cygwin 编译器?

【问题讨论】:

简短的回答是肯定的。更长的答案是,问题是什么? 哈哈。值得一提的是,V8 带有 GYP,它应该可以制作一个本地化的构建项目(可能使用 Visual Studio 的东西,希望使用 makefile),以使我更容易构建项目。如何使用我们自定义的基于 cygwin 的 arm-elf-gcc 编译器进行编译,它是否可以与 gyp 的预构建内容一起使用? 什么是“V8”?有点引擎!?如果您更具体一些,您可能会得到更好的答案或至少更多的浏览量。 V8 是 google chromes javascript JIT。我添加了一个标签来说明这一点 提供的交叉编译器是托管在 Cygwin 上并针对您的 ARM 设备的 GCC 端口吗? 【参考方案1】:

显然,提供的 cygwin 编译器确实是为我们的设备定制的。他们甚至删除了 math.h 库,并添加了自定义 malloc/free 以及 io 函数。经过大量的努力,我设法让 Lua 的修改版本在我们的平台上运行,我想这已经是最好的了。 Lua 赢了!

【讨论】:

以上是关于在 Windows 上使用自定义交叉编译器为 arm 编译 v8的主要内容,如果未能解决你的问题,请参考以下文章

在 xeon-phi 上引导自定义内核

带有自定义共享库的 Qt 项目交叉编译 Qt

如何为自定义 CPU 创建 C 编译器?

交叉编译提升的问题

在 linux 上用 Eclipse 交叉编译,在 windows 上用 eclipse 交叉编译?

将现代 C++ 从 Linux 交叉编译到 Windows