我正在尝试使用Emscripten的emconfigure和emmake来为web编译OpenJDK。最终目标将是能够在浏览器中本地运行未编译的java代码。但是,运行emconfigure ./configure会抛出错误
configure: The C compiler (located as /usr/lib/emscripten/emcc) does not seem to be the required gcc compiler.
configure: The result from running with --version was: ""
configure: error: A gcc compiler is required. Try setting --with-tools-dir.我已经搜索了一整天,但我没有找到任何与这个错误相关的东西。有什么简单的解决方法吗?我应该尝试以这种方式构建OpenJDK吗?
发布于 2021-10-08 14:58:57
对此有什么简单的解决方法吗?
我怀疑。如果您查看(例如) jdk11u/make/autoconf/toolchain.m4,您将看到各种平台上支持的工具链。未列出Emscripten。
我希望emconfigure尝试使用基于autoconf的配置框架。该框架正在检查您正在尝试使用的编译器...然后说不!
您可以修改auto-conf宏以支持Emscripten工具链。但下一个问题将是让代码真正编译。然后让它运行起来。
我应该尝试以这种方式构建OpenJDK吗?
我们不能说你应该做什么。
然而,我会做一些观察。
您所做的等同于尝试将Java移植到新的OP平台和硬件平台。这是一个庞大的项目。除了编译JVM之外,还需要让Hotspot JIT编译器生成WebAssembly代码。
,
SecurityManager框架。您要做的是在web浏览器中恢复对Java的支持……安全保护措施也被取消了。
基本上,Java平台太丰富了,无法在web浏览器中安全地实现。
如果您仍然热衷于使用Emscripten构建JVM,那么可以看看https://github.com/emscripten-core/emscripten/issues/3342。
但请注意,他们正在讨论构建JamVM,这是Java1.6,自2014年以来就没有人接触过它。
https://stackoverflow.com/questions/69496953
复制相似问题