Dokcer编译方舟引擎(MapleEngine)
文档 方舟引擎发布公告 官方文档 - 方舟引擎编译说明 官方文档 - 构建Java 核心库 Docker 文件 复制到方舟引擎代码根目录, 文件名为Dockerfile
FROM ubuntu:16.04 MAINTAINER https://www.openarkcompiler.cn # Setting up the build environment RUN sed -i 's/archive.ubuntu.com/mirrors.163.com/g' /etc/apt/sources.list && \ apt-get -y update && \ apt install --no-install-recommends -y build-essential git wget clang cmake libffi-dev libelf-dev libunwind-dev \ libssl-dev openjdk-8-jdk-headless unzip python-minimal python3 curl && \ rm -rf /var/lib/apt/lists/* # 在国内请反注释下行, 因为容器也是个单独的系统,所以别用127.0.0.1 #ENV http_proxy=http://192.168.3.81:1081 \ # https_proxy=http://192.168.3.81:1081 # copy source COPY . /maple_engine WORKDIR /maple_engine # custom java/lang/Object.java RUN cd /maple_engine/maple_build/jar/ && \ bash -c "cp /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/{rt.jar,jce.jar,jsse.jar,charsets.jar} . " && \ mkdir -p java/lang/ && \ curl -L http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/raw-file/jdk8u265-b01/src/share/classes/java/lang/Object.java > java/lang/Object.java && \ sed -i '/public class Object {/a\long reserved_1; int reserved_2;' java/lang/Object.java && \ javac -target 1.8 -g java/lang/Object.java && \ jar uf rt.jar java/lang/Object.class && \ rm -rf java # compile RUN bash -c "source ./envsetup.sh && ./maple_build/tools/build-maple.sh && ./maple_build/tools/build-libcore.sh && rm -rf /maple_engine/maple_build/out/*" 编译方舟引擎 方舟编译器,也会一起编译,注意: 编译libjava时会占用25G左右的内存,不足25G建议添加swap分区
Continue reading...