aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Conroy <james.conroy@arm.com>2022-08-04 17:49:23 +0100
committerNikhil Raj Arm <nikhil.raj@arm.com>2022-08-05 10:44:29 +0000
commit81cec5d69c8e39c7f644350bb5ed5972faaa61f6 (patch)
tree58d84e01c519b430e21299cd1080bf9cfb7415dd
parent4869c543e57680e798e98643c98bb1816092956d (diff)
downloadarmnn-81cec5d69c8e39c7f644350bb5ed5972faaa61f6.tar.gz
IVGCVSW-6777 Replace old Dockerfile with build-tool
* Removed old Dockerfile and associated docs. * Keeping README as it currently ranks highly on web searches for "armnn docker" and providing a link to new alternative Arm NN Build Tool. Change-Id: I0ce79cedffa035728e394c116912f36481804931 Signed-off-by: James Conroy <james.conroy@arm.com>
-rw-r--r--docker/README.md25
-rw-r--r--docker/armnn-android/Dockerfile.license4
-rw-r--r--docker/x86_64/Dockerfile295
-rw-r--r--docker/x86_64/Dockerfile.license4
4 files changed, 2 insertions, 326 deletions
diff --git a/docker/README.md b/docker/README.md
index cd4ed3d913..bd0ec9cf83 100644
--- a/docker/README.md
+++ b/docker/README.md
@@ -1,29 +1,8 @@
# ARMNN Docker Files
-## [ArmNN on x86_64 for arm64 and arm32](https://github.com/ARM-software/armnn/blob/branches/armnn_20_02/BuildGuideCrossCompilation.md)
-
-<b>x86_64</b> folder has the docker file to build ArmNN under an x86_64 system to target an Arm64 and Arm32 systems.
-
-# To build a docker images
-```bash
-docker build --rm --build-arg proxy=$http_proxy --rm --tag armnn:v1 .
-```
-
-# To Run docker images
-```bash
-docker run -v /etc/localtime:/etc/localtime:ro --rm -it -e http_proxy -e https_proxy -e ftp_proxy -v `pwd`:/work armnn:v1 bash
-```
-
-# To run a docker with X11 support for GUI Application
-```bash
-docker run -v /etc/localtime:/etc/localtime:ro --rm -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -e http_proxy -e https_proxy -e ftp_proxy -v `pwd`:/work armnn:v1 bash
-```
-
-# To mount the camera and access camera from docker env
-```bash
-docker run -v /etc/localtime:/etc/localtime:ro --rm -it --device /dev/video0 -e http_proxy -e https_proxy -e ftp_proxy -v `pwd`:/work armnn:v1 bash
-```
+A productized Arm NN Docker solution has been released as part of our new Arm NN Build Tool which can be found at this link on our GitHub website: https://github.com/ARM-software/armnn/tree/HEAD/build-tool
+The above link automatically points to the latest release version of the Arm NN Build Tool and will be live when Arm NN 22.08 is released.
diff --git a/docker/armnn-android/Dockerfile.license b/docker/armnn-android/Dockerfile.license
deleted file mode 100644
index 344cf33718..0000000000
--- a/docker/armnn-android/Dockerfile.license
+++ /dev/null
@@ -1,4 +0,0 @@
-#
-# Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
-# SPDX-License-Identifier: MIT
-#
diff --git a/docker/x86_64/Dockerfile b/docker/x86_64/Dockerfile
deleted file mode 100644
index e96b1e9e3d..0000000000
--- a/docker/x86_64/Dockerfile
+++ /dev/null
@@ -1,295 +0,0 @@
-FROM ubuntu:18.04
-ENV TERM linux
-ENV DEBIAN_FRONTEND noninteractive
-
-# Forward system proxy setting
-# ARG proxy
-# ENV http_proxy $proxy
-# ENV https_proxy $proxy
-
-# Basic apt update
-RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends locales ca-certificates && rm -rf /var/lib/apt/lists/*
-
-# Set the locale to en_US.UTF-8, because the Yocto build fails without any locale set.
-RUN locale-gen en_US.UTF-8 && update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
-ENV LANG en_US.UTF-8
-ENV LC_ALL en_US.UTF-8
-
-# Again, off the certificare
-RUN echo "check_certificate = off" >> ~/.wgetrc
-RUN echo "[global] \n\
-trusted-host = pypi.python.org \n \
-\t pypi.org \n \
-\t files.pythonhosted.org" >> /etc/pip.conf
-
-# Get basic packages
-RUN apt-get update && apt-get install -y \
- apparmor \
- aufs-tools \
- automake \
- bash-completion \
- btrfs-tools \
- build-essential \
- cmake \
- createrepo \
- curl \
- dpkg-sig \
- g++ \
- gcc \
- git \
- iptables \
- jq \
- libapparmor-dev \
- libc6-dev \
- libcap-dev \
- libsystemd-dev \
- libyaml-dev \
- mercurial \
- net-tools \
- parallel \
- pkg-config \
- python-dev \
- python-mock \
- python-pip \
- python-setuptools \
- python-websocket \
- golang-go \
- iproute2 \
- iputils-ping \
- vim-common \
- vim \
- wget \
- libtool \
- unzip \
- scons \
- curl \
- autoconf \
- libtool \
- build-essential \
- libssl-dev \
- g++ && rm -rf /var/lib/apt/lists/*
-
-# Install Cross-compiling ToolChain
-RUN apt-get update && apt-get install -y crossbuild-essential-arm64 crossbuild-essential-armhf
-
-# Install Cmake 3.19
-RUN cd $HOME && \
- wget -O cmake-3.19.0.tar.gz https://cmake.org/files/v3.19/cmake-3.19.0.tar.gz && \
- tar -xzf cmake-3.19.0.tar.gz && \
- cd $HOME/cmake-3.19.0 && \
- ./bootstrap && \
- make && \
- make install
-
-# Build and install Google's Protobuf library
-# Download and Extract
-RUN mkdir -p $HOME/google && \
- cd $HOME/google && \
- wget https://github.com/protocolbuffers/protobuf/releases/download/v3.12.0/protobuf-all-3.12.0.tar.gz && \
- tar -zxvf protobuf-all-3.12.0.tar.gz
-
-# Build a native (x86_64) version
-RUN cd $HOME/google/protobuf-3.12.0 && \
- mkdir x86_build && cd x86_build && \
- ../configure --prefix=$HOME/armnn-devenv/google/x86_64_pb_install && \
- make install -j$(nproc)
-
-# Build the arm64 version of the protobuf libraries
-RUN cd $HOME/google/protobuf-3.12.0 && \
- mkdir arm64_build && cd arm64_build && \
- export CC=aarch64-linux-gnu-gcc && \
- export CXX=aarch64-linux-gnu-g++ && \
- ../configure --host=aarch64-linux \
- --prefix=$HOME/armnn-devenv/google/arm64_pb_install \
- --with-protoc=$HOME/armnn-devenv/google/x86_64_pb_install/bin/protoc && \
- make install -j$(nproc)
-
-# Build the arm32 version of the protobuf libraries
-RUN cd $HOME/google/protobuf-3.12.0 && \
- mkdir arm32_build && cd arm32_build && \
- export CC=arm-linux-gnueabihf-gcc && \
- export CXX=arm-linux-gnueabihf-g++ && \
- ../configure --host=arm-linux \
- --prefix=$HOME/armnn-devenv/google/arm32_pb_install \
- --with-protoc=$HOME/armnn-devenv/google/x86_64_pb_install/bin/protoc && \
- make install -j$(nproc)
-
-# Dep Error - Bug ARMNN
-RUN apt-get update && apt-get install -y \
- python-numpy
-
-# Setup Env
-# ENV PATH=$HOME/armnn-devenv/google/x86_64_pb_install/bin/:$PATH
-# ENV LD_LIBRARY_PATH=$HOME/armnn-devenv/google/x86_64_pb_install/lib/:$LD_LIBRARY_PATH
-
-# Download ArmNN 64-bit
-RUN cd $HOME/armnn-devenv && git clone "https://review.mlplatform.org/ml/armnn" && \
- cd armnn/ && git checkout master
-
-# Download ArmNN 32-bit
-RUN cd $HOME/armnn-devenv && git clone "https://review.mlplatform.org/ml/armnn" armnn-32 && \
- cd armnn-32/ && git checkout master
-
-# Build 64-bit Compute Library
-RUN cd $HOME/armnn-devenv/ && git clone https://review.mlplatform.org/ml/ComputeLibrary && \
- cd ComputeLibrary && \
- git checkout $($HOME/armnn-devenv/armnn/scripts/get_compute_library.sh -p) && \
- scons Werror=0 arch=arm64-v8a neon=1 opencl=1 embed_kernels=1 extra_cxx_flags="-fPIC" -j$(nproc)
-
-# Build 32-bit Compute Library
-RUN cd $HOME/armnn-devenv/ && mkdir ComputeLibrary_32 && git clone https://review.mlplatform.org/ml/ComputeLibrary ComputeLibrary_32 && \
- cd ComputeLibrary_32 &&\
- git checkout $($HOME/armnn-devenv/armnn/scripts/get_compute_library.sh -p) && \
- scons Werror=0 arch=armv7a neon=1 opencl=1 embed_kernels=1 extra_cxx_flags="-fPIC" -j$(nproc)
-
-# Download Tensorflow (Checkout latest tested version of TF using get_tensorflow.sh)
-RUN cd $HOME/armnn-devenv && \
- git clone https://github.com/tensorflow/tensorflow.git && \
- cd tensorflow && \
- git checkout $($HOME/armnn-devenv/armnn/scripts/get_tensorflow.sh -p)
-
-# Build 64-bit TF Lite
-RUN cd $HOME/armnn-devenv && \
- curl -LO https://storage.googleapis.com/mirror.tensorflow.org/developer.arm.com/media/Files/downloads/gnu-a/8.3-2019.03/binrel/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz && \
- mkdir tflite-toolchains &&\
- tar xvf gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz -C tflite-toolchains && \
- mkdir -p tflite/build && \
- cd tflite/build && \
- ARMCC_PREFIX=$HOME/armnn-devenv/tflite-toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/aarch64-linux-gnu- && \
- ARMCC_FLAGS="-funsafe-math-optimizations" && \
- cmake -DCMAKE_C_COMPILER=${ARMCC_PREFIX}gcc \
- -DCMAKE_CXX_COMPILER=${ARMCC_PREFIX}g++ \
- -DCMAKE_C_FLAGS="${ARMCC_FLAGS}" -DCMAKE_CXX_FLAGS="${ARMCC_FLAGS}" \
- -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_SYSTEM_NAME=Linux \
- -DTFLITE_ENABLE_XNNPACK=OFF \
- -DCMAKE_SYSTEM_PROCESSOR=aarch64 \
- $HOME/armnn-devenv/tensorflow/tensorflow/lite/ && \
- cmake --build .
-
-# Build 32-bit TF Lite
-RUN cd $HOME/armnn-devenv && \
- curl -LO https://storage.googleapis.com/mirror.tensorflow.org/developer.arm.com/media/Files/downloads/gnu-a/8.3-2019.03/binrel/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.xz && \
- mkdir tflite-toolchains-32 && \
- tar xf gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.xz -C tflite-toolchains-32 && \
- mkdir -p tflite-32/build && \
- cd tflite-32/build && \
- ARMCC_PREFIX=$HOME/armnn-devenv/tflite-toolchains-32/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-linux-gnueabihf- && \
- ARMCC_FLAGS="-funsafe-math-optimizations" && \
- cmake -DCMAKE_C_COMPILER=${ARMCC_PREFIX}gcc \
- -DCMAKE_CXX_COMPILER=${ARMCC_PREFIX}g++ \
- -DCMAKE_C_FLAGS="${ARMCC_FLAGS}" -DCMAKE_CXX_FLAGS="${ARMCC_FLAGS}" \
- -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_SYSTEM_NAME=Linux \
- -DTFLITE_ENABLE_XNNPACK=OFF \
- -DCMAKE_SYSTEM_PROCESSOR=armv7a \
- $HOME/armnn-devenv/tensorflow/tensorflow/lite/ && \
- cmake --build .
-
-# Download Flatbuffers
-RUN cd $HOME/armnn-devenv && \
- wget -O flatbuffers-1.12.0.tar.gz https://github.com/google/flatbuffers/archive/v1.12.0.tar.gz && \
- tar xf flatbuffers-1.12.0.tar.gz && \
- cd flatbuffers-1.12.0 && \
- rm -f CMakeCache.txt
-
-# Build native x86_64 version of Flatbuffers
-RUN cd $HOME/armnn-devenv && cd flatbuffers-1.12.0 && \
- mkdir build && \
- cd build && \
- cmake .. -DFLATBUFFERS_BUILD_FLATC=1 \
- -DCMAKE_INSTALL_PREFIX:PATH=$HOME/armnn-devenv/flatbuffers \
- -DFLATBUFFERS_BUILD_TESTS=0 && \
- make all install -j$(nproc)
-
-# Build arm64 version of Flatbuffers
-RUN cd $HOME/armnn-devenv && cd flatbuffers-1.12.0 && \
- mkdir build-arm64 && \
- cd build-arm64 && \
- CXXFLAGS="-fPIC" cmake .. -DCMAKE_C_COMPILER=/usr/bin/aarch64-linux-gnu-gcc \
- -DCMAKE_CXX_COMPILER=/usr/bin/aarch64-linux-gnu-g++ \
- -DFLATBUFFERS_BUILD_FLATC=1 \
- -DCMAKE_INSTALL_PREFIX:PATH=$HOME/armnn-devenv/flatbuffers-arm64 \
- -DFLATBUFFERS_BUILD_TESTS=0 && \
- make all install -j$(nproc)
-
-# Build arm32 version of Flatbuffers
-RUN cd $HOME/armnn-devenv && cd flatbuffers-1.12.0 && \
- mkdir build-arm32 && \
- cd build-arm32 && \
- CXXFLAGS="-fPIC" cmake .. -DCMAKE_C_COMPILER=/usr/bin/arm-linux-gnueabihf-gcc \
- -DCMAKE_CXX_COMPILER=/usr/bin/arm-linux-gnueabihf-g++ \
- -DFLATBUFFERS_BUILD_FLATC=1 \
- -DCMAKE_INSTALL_PREFIX:PATH=$HOME/armnn-devenv/flatbuffers-arm32 \
- -DFLATBUFFERS_BUILD_TESTS=0 && \
- make all install -j$(nproc)
-
-# Build onnx
-RUN cd $HOME/armnn-devenv && git clone https://github.com/onnx/onnx.git && \
- cd onnx && \
- git fetch https://github.com/onnx/onnx.git 553df22c67bee5f0fe6599cff60f1afc6748c635 && git checkout FETCH_HEAD && \
- LD_LIBRARY_PATH=$HOME/armnn-devenv/google/x86_64_pb_install/lib:$LD_LIBRARY_PATH \
- $HOME/armnn-devenv/google/x86_64_pb_install/bin/protoc \
- onnx/onnx.proto --proto_path=. --proto_path=../google/x86_64_pb_install/include --cpp_out $HOME/armnn-devenv/onnx
-
-# Generate TF Lite Schema 64-bit
-RUN cd $HOME/armnn-devenv && \
- cd tflite && \
- cp ../tensorflow/tensorflow/lite/schema/schema.fbs . && \
- ../flatbuffers-1.12.0/build/flatc -c --gen-object-api --reflect-types --reflect-names schema.fbs
-
-# Generate TF Lite Schema 32-bit
-RUN cd $HOME/armnn-devenv && \
- cd tflite-32 && \
- cp ../tensorflow/tensorflow/lite/schema/schema.fbs . && \
- ../flatbuffers-1.12.0/build/flatc -c --gen-object-api --reflect-types --reflect-names schema.fbs
-
-# Build 64-bit ArmNN
-RUN cd $HOME/armnn-devenv && \
- cd armnn && mkdir build && cd build && \
- export CXX=aarch64-linux-gnu-g++ && \
- export CC=aarch64-linux-gnu-gcc && \
- cmake .. \
- -DCMAKE_CXX_FLAGS=-w \
- -DBUILD_TESTS=1 \
- -DARMCOMPUTE_ROOT=$HOME/armnn-devenv/ComputeLibrary \
- -DARMCOMPUTE_BUILD_DIR=$HOME/armnn-devenv/ComputeLibrary/build/ \
- -DARMCOMPUTENEON=1 -DARMCOMPUTECL=1 -DARMNNREF=1 \
- -DONNX_GENERATED_SOURCES=$HOME/armnn-devenv/onnx \
- -DBUILD_ONNX_PARSER=1 \
- -DBUILD_TF_LITE_PARSER=1 \
- -DBUILD_ARMNN_TFLITE_DELEGATE=1 \
- -DTENSORFLOW_ROOT=$HOME/armnn-devenv/tensorflow \
- -DTFLITE_LIB_ROOT=$HOME/armnn-devenv/tflite/build \
- -DTF_LITE_SCHEMA_INCLUDE_PATH=$HOME/armnn-devenv/tflite \
- -DFLATBUFFERS_ROOT=$HOME/armnn-devenv/flatbuffers-arm64 \
- -DFLATC_DIR=$HOME/armnn-devenv/flatbuffers-1.12.0/build \
- -DPROTOBUF_ROOT=$HOME/armnn-devenv/google/x86_64_pb_install \
- -DPROTOBUF_LIBRARY_DEBUG=$HOME/armnn-devenv/google/arm64_pb_install/lib/libprotobuf.so.23.0.0 \
- -DPROTOBUF_LIBRARY_RELEASE=$HOME/armnn-devenv/google/arm64_pb_install/lib/libprotobuf.so.23.0.0 && \
- make -j$(nproc)
-
-# Build 32-bit ArmNN
-RUN cd $HOME/armnn-devenv && \
- cd armnn-32 && mkdir build && cd build && \
- export CXX=arm-linux-gnueabihf-g++ && \
- export CC=arm-linux-gnueabihf-gcc && \
- cmake .. \
- -DCMAKE_CXX_FLAGS=-w \
- -DBUILD_TESTS=1 \
- -DARMCOMPUTE_ROOT=$HOME/armnn-devenv/ComputeLibrary_32 \
- -DARMCOMPUTE_BUILD_DIR=$HOME/armnn-devenv/ComputeLibrary_32/build/ \
- -DARMCOMPUTENEON=1 -DARMCOMPUTECL=1 -DARMNNREF=1 \
- -DONNX_GENERATED_SOURCES=$HOME/armnn-devenv/onnx \
- -DBUILD_ONNX_PARSER=1 \
- -DBUILD_TF_LITE_PARSER=1 \
- -DBUILD_ARMNN_TFLITE_DELEGATE=1 \
- -DTENSORFLOW_ROOT=$HOME/armnn-devenv/tensorflow \
- -DTFLITE_LIB_ROOT=$HOME/armnn-devenv/tflite-32/build \
- -DTF_LITE_SCHEMA_INCLUDE_PATH=$HOME/armnn-devenv/tflite-32 \
- -DFLATBUFFERS_ROOT=$HOME/armnn-devenv/flatbuffers-arm32 \
- -DFLATC_DIR=$HOME/armnn-devenv/flatbuffers-1.12.0/build \
- -DPROTOBUF_ROOT=$HOME/armnn-devenv/google/x86_64_pb_install \
- -DPROTOBUF_LIBRARY_DEBUG=$HOME/armnn-devenv/google/arm32_pb_install/lib/libprotobuf.so.23.0.0 \
- -DPROTOBUF_LIBRARY_RELEASE=$HOME/armnn-devenv/google/arm32_pb_install/lib/libprotobuf.so.23.0.0 \
- -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON && \
- make -j$(nproc)
-
diff --git a/docker/x86_64/Dockerfile.license b/docker/x86_64/Dockerfile.license
deleted file mode 100644
index 6b63511843..0000000000
--- a/docker/x86_64/Dockerfile.license
+++ /dev/null
@@ -1,4 +0,0 @@
-#
-# Copyright © 2020-2022 Arm Ltd and Contributors. All rights reserved.
-# SPDX-License-Identifier: MIT
-#