0

我正在尝试从命令行为 ARMv7 目标交叉编译一个简单的 java 示例。

我需要为交叉编译添加哪些 javac 选项?

这是在主机上编译的标准 javac 命令:

javac -d bin -sourcepath src src/TextPanel.java
4

2 回答 2

8

javac将您的代码编译为字节码,然后可以在 JVM 上运行。字节码本身是跨平台的:只有 JVM(解释该字节码)是平台相关的。您需要的是在 ARMv7 目标上运行的 JVM。

于 2012-12-08T19:05:03.840 回答
2

没有任何。

大多数 Java 编译器生成针对特定 JVM 规范的 Java 字节码。生成的代码将在任何此类 VM 上运行,您无需关心机器架构,只需要“是否有运行在其上的 JVM 实现?”。

当然,有些编译器会生成其他东西(例如 gjc),但同样,javac前端应该是相当标准的 javac。比较:当您使用 GCC 工具链交叉编译 C 代码时,命令行中的唯一区别在于选择要调用的编译器二进制文件。编译器的标志和参数保持不变,只是名称发生了变化(例如 fromgcci686-w64-mingw32-gcc)。

于 2012-12-08T19:07:02.637 回答