Dockerfile 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # Copyright (C) 2019 Intel Corporation. All rights reserved.
  2. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  3. FROM ubuntu:22.04
  4. ARG DEBIAN_FRONTEND=noninteractive
  5. ENV TZ=Asian/Shanghai
  6. # Install dependencies for Zephyr
  7. # hadolint ignore=DL3008
  8. RUN apt-get update && apt-get install -y --no-install-recommends git cmake ninja-build gperf \
  9. ccache dfu-util device-tree-compiler wget \
  10. python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \
  11. make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1 \
  12. && apt-get clean -y && rm -rf /var/lib/apt/lists/*
  13. # Install the Zephyr Software Development Kit (SDK)
  14. WORKDIR /opt
  15. # hadolint ignore=DL4006
  16. RUN wget --progress=dot:giga https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.3/zephyr-sdk-0.16.3_linux-x86_64.tar.xz \
  17. && wget --progress=dot:giga -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.3/sha256.sum | shasum --check --ignore-missing \
  18. && tar xvf zephyr-sdk-0.16.3_linux-x86_64.tar.xz && rm zephyr-sdk-0.16.3_linux-x86_64.tar.xz
  19. WORKDIR /opt/zephyr-sdk-0.16.3
  20. # hadolint ignore=DL4006
  21. RUN yes | ./setup.sh
  22. # Get Zephyr
  23. # hadolint ignore=DL3013
  24. RUN pip3 install --no-cache-dir west && west init -m https://github.com/zephyrproject-rtos/zephyr --mr v3.5.0 /root/zephyrproject
  25. WORKDIR /root/zephyrproject
  26. RUN west update
  27. WORKDIR /root/zephyrproject/zephyr
  28. RUN west zephyr-export && pip install --no-cache-dir -r ~/zephyrproject/zephyr/scripts/requirements.txt
  29. # Git clone wamr
  30. WORKDIR /root
  31. RUN git clone https://github.com/bytecodealliance/wasm-micro-runtime.git
  32. WORKDIR /root/wasm-micro-runtime/product-mini/platforms/zephyr/simple
  33. ENV ZEPHYR_BASE="/root/zephyrproject/zephyr"