跳到内容

抓斗/心轴

 
 

存储库文件导航

心轴

心轴为GraalVM社区版的下游发行版.Mandrel的主要目标是提供本机映像专门发布以支持夸克斯.目的是将本机映像GraalVM与OpenJDK和Red Hat Enterprise Linux库的功能,以提高本地Quarkus应用程序的可维护性。Mandrel最适合描述为一个带有特殊打包的GraalVM Native Image构建器的常规OpenJDK发行版(本机映像).

心轴与谷物有何不同

Mandrel版本是从上游GraalVM代码库派生的代码库构建的,只有一些小的更改,但有一些重大的排除。GraalVM的完整发行版远远不止本机映像:它具有多语言支持、允许高效实现解释器的Truffle框架、本地映像的LLVM编译器后端、作为Hotspot C2服务器编译器替代品的libgraal JIT编译器等等。心轴是我们支持的功能的一小部分本机映像使用案例。

心轴本机映像也不包括以下功能:

  • 实验性图像构建服务器,即--实验构建服务器选项。
  • LLVM后端,即-H: 编译器后端=llvm选项。
  • musl-libc实现,即--libc=最低选项。
  • 支持生成静态本机映像,即--静态选项。
  • 支持非JVM语言和多语言语言,即--语言:<languageId>选项。

Mandrel的构建与GraalVM略有不同,它使用jdk17u的标准OpenJDK项目版本。这意味着Oracle在用于构建自己的GraalVM下载的OpenJDK版本中添加了一些小的增强功能,但它并没有从中获益。这些增强大多是针对JVMCI模块的,该模块允许Graal编译器在OpenJDK中运行。其他的都是行为上的微小改变。在某些情况下,这些增强可能会导致本机图像生成过程中出现细微差异。它们不应导致生成的图像本身以明显不同的方式执行。

通信渠道

请根据报告漏洞指南.

入门

心轴分布可从以下网址下载存储库的版本和容器图像可在码头.

前提条件

心轴本机映像取决于以下软件包:

  • 自由类型级别
  • 海湾合作委员会
  • glibc水准仪
  • libstdc++-静态
  • zlib级别

在Fedora/CentOS/RHEL上,它们可以安装:

dnf安装glibc-devel-zlib-devel-gcc-freetype-devel-libstdc++-static

注意:可能会调用包滑动静态的libstdc++-开发而不是libstdc++-静态取决于您的系统。如果系统缺少stdc++,gcc-c公司++也需要打包。

在Ubuntu-like系统上:

apt安装g++zlib1g-dev libfreetype6-dev

从源头构建心轴

有关从源头构建心轴的信息,请参见心轴包装并咨询CONTRIBUTING.md中的存储库结构关于要使用的心轴支管。

社区

利用Works on Arm倡议增强软件开发能力在Arm徽标上工作 手臂上的工作是一项战略举措,旨在促进Arm64的软件生态系统。

GraalVM的 心轴分配权力Quarkus本地自豪地跻身于图书馆和成功利用Works on Arm资源的工具。

关于

Mandrel是GraalVM社区版的下游发行版。Mandrel的主要目标是提供专门支持Quarkus的本地图像发布。

话题

资源

许可证

安全政策

星星

观察者

叉子