From c82e85337da96330874d6fae419f805d4b57df23 Mon Sep 17 00:00:00 2001 From: Akos Pasztor Date: Sat, 22 Jun 2024 16:58:46 +0200 Subject: [PATCH 1/4] Add docker run command example to README.md --- README.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 364966c..0b3db4e 100644 --- a/README.md +++ b/README.md @@ -13,10 +13,16 @@ Docker Hub link: https://hub.docker.com/r/akospasztor/docker-gcc-arm ## Usage -Build image with gcc version 8-2019-q3 for linux: +Build image with gcc version 10-2020-q4 for linux: ```bash -docker build -t akospasztor/docker-gcc-arm:8-2019-q3-linux 8-2019-q3/linux/ +docker build -t akospasztor/docker-gcc-arm:10-2020-q4-linux-latest 10-2020-q4/linux/ +``` + +Manually run container and mount a project folder: + +```bash +docker run --rm -it -v :/app akospasztor/docker-gcc-arm:10-2020-q4-linux-latest ``` Manually push all tags to Docker Hub: From 89bb96056177652f6c62bee764ebdf2e03444d7c Mon Sep 17 00:00:00 2001 From: Akos Pasztor Date: Sat, 22 Jun 2024 16:59:28 +0200 Subject: [PATCH 2/4] Add unzip to install list --- 10-2020-q4/linux/Dockerfile | 1 + 8-2019-q3/linux/Dockerfile | 1 + 9-2019-q4/linux/Dockerfile | 1 + 9-2020-q2/linux/Dockerfile | 1 + 4 files changed, 4 insertions(+) diff --git a/10-2020-q4/linux/Dockerfile b/10-2020-q4/linux/Dockerfile index 70423bd..6788c65 100644 --- a/10-2020-q4/linux/Dockerfile +++ b/10-2020-q4/linux/Dockerfile @@ -8,6 +8,7 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ clang-format-11 \ doxygen \ make \ + unzip \ wget \ && rm -rf /var/lib/apt/lists/* diff --git a/8-2019-q3/linux/Dockerfile b/8-2019-q3/linux/Dockerfile index 6d7580e..d6ec137 100644 --- a/8-2019-q3/linux/Dockerfile +++ b/8-2019-q3/linux/Dockerfile @@ -8,6 +8,7 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ clang-format-11 \ doxygen \ make \ + unzip \ wget \ && rm -rf /var/lib/apt/lists/* diff --git a/9-2019-q4/linux/Dockerfile b/9-2019-q4/linux/Dockerfile index 46c5dd8..0c8205f 100644 --- a/9-2019-q4/linux/Dockerfile +++ b/9-2019-q4/linux/Dockerfile @@ -8,6 +8,7 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ clang-format-11 \ doxygen \ make \ + unzip \ wget \ && rm -rf /var/lib/apt/lists/* diff --git a/9-2020-q2/linux/Dockerfile b/9-2020-q2/linux/Dockerfile index e59a794..b4915ef 100644 --- a/9-2020-q2/linux/Dockerfile +++ b/9-2020-q2/linux/Dockerfile @@ -8,6 +8,7 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ clang-format-11 \ doxygen \ make \ + unzip \ wget \ && rm -rf /var/lib/apt/lists/* From 8337aae5afe516df4bc1c8e64cac4855ea3aa252 Mon Sep 17 00:00:00 2001 From: Akos Pasztor Date: Sat, 22 Jun 2024 17:00:13 +0200 Subject: [PATCH 3/4] Add GCC_FILE variable for easier gcc install --- 10-2020-q4/linux/Dockerfile | 7 ++++--- 8-2019-q3/linux/Dockerfile | 7 ++++--- 9-2019-q4/linux/Dockerfile | 7 ++++--- 9-2020-q2/linux/Dockerfile | 7 ++++--- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/10-2020-q4/linux/Dockerfile b/10-2020-q4/linux/Dockerfile index 6788c65..6833e13 100644 --- a/10-2020-q4/linux/Dockerfile +++ b/10-2020-q4/linux/Dockerfile @@ -15,12 +15,13 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ # Install GCC for ARM ENV GCC_VERSION=10-2020-q4 ENV GCC_URL=https://developer.arm.com/-/media/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2 -RUN wget --progress=dot:mega -O /tmp/$GCC_VERSION.tar.bz2 $GCC_URL +ENV GCC_FILE=/tmp/gcc-$GCC_VERSION.tar.bz2 +RUN wget --progress=dot:mega -O $GCC_FILE $GCC_URL ENV GCC_DIR=/opt/gcc/$GCC_VERSION RUN mkdir -p $GCC_DIR -RUN tar xjf /tmp/$GCC_VERSION.tar.bz2 -C $GCC_DIR --strip-components=1 -RUN rm -f /tmp/$GCC_VERSION.tar.bz2 +RUN tar xjf $GCC_FILE -C $GCC_DIR --strip-components=1 +RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH diff --git a/8-2019-q3/linux/Dockerfile b/8-2019-q3/linux/Dockerfile index d6ec137..ea8fdeb 100644 --- a/8-2019-q3/linux/Dockerfile +++ b/8-2019-q3/linux/Dockerfile @@ -15,12 +15,13 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ # Install GCC for ARM ENV GCC_VERSION=8-2019-q3 ENV GCC_URL=https://developer.arm.com/-/media/Files/downloads/gnu-rm/8-2019q3/RC1.1/gcc-arm-none-eabi-8-2019-q3-update-linux.tar.bz2 -RUN wget --progress=dot:mega -O /tmp/$GCC_VERSION.tar.bz2 $GCC_URL +ENV GCC_FILE=/tmp/gcc-$GCC_VERSION.tar.bz2 +RUN wget --progress=dot:mega -O $GCC_FILE $GCC_URL ENV GCC_DIR=/opt/gcc/$GCC_VERSION RUN mkdir -p $GCC_DIR -RUN tar xjf /tmp/$GCC_VERSION.tar.bz2 -C $GCC_DIR --strip-components=1 -RUN rm -f /tmp/$GCC_VERSION.tar.bz2 +RUN tar xjf $GCC_FILE -C $GCC_DIR --strip-components=1 +RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH diff --git a/9-2019-q4/linux/Dockerfile b/9-2019-q4/linux/Dockerfile index 0c8205f..bd8e2d6 100644 --- a/9-2019-q4/linux/Dockerfile +++ b/9-2019-q4/linux/Dockerfile @@ -15,12 +15,13 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ # Install GCC for ARM ENV GCC_VERSION=9-2019-q4 ENV GCC_URL=https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2 -RUN wget --progress=dot:mega -O /tmp/$GCC_VERSION.tar.bz2 $GCC_URL +ENV GCC_FILE=/tmp/gcc-$GCC_VERSION.tar.bz2 +RUN wget --progress=dot:mega -O $GCC_FILE $GCC_URL ENV GCC_DIR=/opt/gcc/$GCC_VERSION RUN mkdir -p $GCC_DIR -RUN tar xjf /tmp/$GCC_VERSION.tar.bz2 -C $GCC_DIR --strip-components=1 -RUN rm -f /tmp/$GCC_VERSION.tar.bz2 +RUN tar xjf $GCC_FILE -C $GCC_DIR --strip-components=1 +RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH diff --git a/9-2020-q2/linux/Dockerfile b/9-2020-q2/linux/Dockerfile index b4915ef..3a1a669 100644 --- a/9-2020-q2/linux/Dockerfile +++ b/9-2020-q2/linux/Dockerfile @@ -15,12 +15,13 @@ RUN apt-get update && apt-get -y -q --no-install-recommends install \ # Install GCC for ARM ENV GCC_VERSION=9-2020-q2 ENV GCC_URL=https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2020q2/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2 -RUN wget --progress=dot:mega -O /tmp/$GCC_VERSION.tar.bz2 $GCC_URL +ENV GCC_FILE=/tmp/gcc-$GCC_VERSION.tar.bz2 +RUN wget --progress=dot:mega -O $GCC_FILE $GCC_URL ENV GCC_DIR=/opt/gcc/$GCC_VERSION RUN mkdir -p $GCC_DIR -RUN tar xjf /tmp/$GCC_VERSION.tar.bz2 -C $GCC_DIR --strip-components=1 -RUN rm -f /tmp/$GCC_VERSION.tar.bz2 +RUN tar xjf $GCC_FILE -C $GCC_DIR --strip-components=1 +RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH From 20677d478e86ecef1cce934f842f322a60738a7a Mon Sep 17 00:00:00 2001 From: Akos Pasztor Date: Sat, 22 Jun 2024 17:00:27 +0200 Subject: [PATCH 4/4] Add CMake and Ninja installation --- 10-2020-q4/linux/Dockerfile | 27 +++++++++++++++++++++++++++ 8-2019-q3/linux/Dockerfile | 27 +++++++++++++++++++++++++++ 9-2019-q4/linux/Dockerfile | 27 +++++++++++++++++++++++++++ 9-2020-q2/linux/Dockerfile | 27 +++++++++++++++++++++++++++ 4 files changed, 108 insertions(+) diff --git a/10-2020-q4/linux/Dockerfile b/10-2020-q4/linux/Dockerfile index 6833e13..2e4cea7 100644 --- a/10-2020-q4/linux/Dockerfile +++ b/10-2020-q4/linux/Dockerfile @@ -25,3 +25,30 @@ RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH + +# Install CMake +ENV CMAKE_VERSION=3.29.6 +ENV CMAKE_URL=https://github.com/Kitware/CMake/releases/download/v3.29.6/cmake-3.29.6-linux-x86_64.tar.gz +ENV CMAKE_FILE=/tmp/cmake-$CMAKE_VERSION.tar.gz +RUN wget --progress=dot:mega -O $CMAKE_FILE $CMAKE_URL + +ENV CMAKE_DIR=/opt/cmake/$CMAKE_VERSION +RUN mkdir -p $CMAKE_DIR +RUN tar xzf $CMAKE_FILE -C $CMAKE_DIR --strip-components=1 +RUN rm -f $CMAKE_FILE + +ENV CMAKE_PATH=$CMAKE_DIR/bin +ENV PATH=$CMAKE_PATH:$PATH + +# Install Ninja +ENV NINJA_VERSION=1.12.1 +ENV NINJA_URL=https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-linux.zip +ENV NINJA_FILE=/tmp/ninja-$NINJA_VERSION.zip +RUN wget --progress=dot:mega -O $NINJA_FILE $NINJA_URL + +ENV NINJA_DIR=/opt/ninja/$NINJA_VERSION +RUN mkdir -p $NINJA_DIR +RUN unzip $NINJA_FILE -d $NINJA_DIR +RUN rm -f $NINJA_FILE + +ENV PATH=$NINJA_DIR:$PATH diff --git a/8-2019-q3/linux/Dockerfile b/8-2019-q3/linux/Dockerfile index ea8fdeb..a3dec2b 100644 --- a/8-2019-q3/linux/Dockerfile +++ b/8-2019-q3/linux/Dockerfile @@ -25,3 +25,30 @@ RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH + +# Install CMake +ENV CMAKE_VERSION=3.29.6 +ENV CMAKE_URL=https://github.com/Kitware/CMake/releases/download/v3.29.6/cmake-3.29.6-linux-x86_64.tar.gz +ENV CMAKE_FILE=/tmp/cmake-$CMAKE_VERSION.tar.gz +RUN wget --progress=dot:mega -O $CMAKE_FILE $CMAKE_URL + +ENV CMAKE_DIR=/opt/cmake/$CMAKE_VERSION +RUN mkdir -p $CMAKE_DIR +RUN tar xzf $CMAKE_FILE -C $CMAKE_DIR --strip-components=1 +RUN rm -f $CMAKE_FILE + +ENV CMAKE_PATH=$CMAKE_DIR/bin +ENV PATH=$CMAKE_PATH:$PATH + +# Install Ninja +ENV NINJA_VERSION=1.12.1 +ENV NINJA_URL=https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-linux.zip +ENV NINJA_FILE=/tmp/ninja-$NINJA_VERSION.zip +RUN wget --progress=dot:mega -O $NINJA_FILE $NINJA_URL + +ENV NINJA_DIR=/opt/ninja/$NINJA_VERSION +RUN mkdir -p $NINJA_DIR +RUN unzip $NINJA_FILE -d $NINJA_DIR +RUN rm -f $NINJA_FILE + +ENV PATH=$NINJA_DIR:$PATH diff --git a/9-2019-q4/linux/Dockerfile b/9-2019-q4/linux/Dockerfile index bd8e2d6..4260256 100644 --- a/9-2019-q4/linux/Dockerfile +++ b/9-2019-q4/linux/Dockerfile @@ -25,3 +25,30 @@ RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH + +# Install CMake +ENV CMAKE_VERSION=3.29.6 +ENV CMAKE_URL=https://github.com/Kitware/CMake/releases/download/v3.29.6/cmake-3.29.6-linux-x86_64.tar.gz +ENV CMAKE_FILE=/tmp/cmake-$CMAKE_VERSION.tar.gz +RUN wget --progress=dot:mega -O $CMAKE_FILE $CMAKE_URL + +ENV CMAKE_DIR=/opt/cmake/$CMAKE_VERSION +RUN mkdir -p $CMAKE_DIR +RUN tar xzf $CMAKE_FILE -C $CMAKE_DIR --strip-components=1 +RUN rm -f $CMAKE_FILE + +ENV CMAKE_PATH=$CMAKE_DIR/bin +ENV PATH=$CMAKE_PATH:$PATH + +# Install Ninja +ENV NINJA_VERSION=1.12.1 +ENV NINJA_URL=https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-linux.zip +ENV NINJA_FILE=/tmp/ninja-$NINJA_VERSION.zip +RUN wget --progress=dot:mega -O $NINJA_FILE $NINJA_URL + +ENV NINJA_DIR=/opt/ninja/$NINJA_VERSION +RUN mkdir -p $NINJA_DIR +RUN unzip $NINJA_FILE -d $NINJA_DIR +RUN rm -f $NINJA_FILE + +ENV PATH=$NINJA_DIR:$PATH diff --git a/9-2020-q2/linux/Dockerfile b/9-2020-q2/linux/Dockerfile index 3a1a669..26d3f30 100644 --- a/9-2020-q2/linux/Dockerfile +++ b/9-2020-q2/linux/Dockerfile @@ -25,3 +25,30 @@ RUN rm -f $GCC_FILE ENV GCC_PATH=$GCC_DIR/bin ENV PATH=$GCC_PATH:$PATH + +# Install CMake +ENV CMAKE_VERSION=3.29.6 +ENV CMAKE_URL=https://github.com/Kitware/CMake/releases/download/v3.29.6/cmake-3.29.6-linux-x86_64.tar.gz +ENV CMAKE_FILE=/tmp/cmake-$CMAKE_VERSION.tar.gz +RUN wget --progress=dot:mega -O $CMAKE_FILE $CMAKE_URL + +ENV CMAKE_DIR=/opt/cmake/$CMAKE_VERSION +RUN mkdir -p $CMAKE_DIR +RUN tar xzf $CMAKE_FILE -C $CMAKE_DIR --strip-components=1 +RUN rm -f $CMAKE_FILE + +ENV CMAKE_PATH=$CMAKE_DIR/bin +ENV PATH=$CMAKE_PATH:$PATH + +# Install Ninja +ENV NINJA_VERSION=1.12.1 +ENV NINJA_URL=https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-linux.zip +ENV NINJA_FILE=/tmp/ninja-$NINJA_VERSION.zip +RUN wget --progress=dot:mega -O $NINJA_FILE $NINJA_URL + +ENV NINJA_DIR=/opt/ninja/$NINJA_VERSION +RUN mkdir -p $NINJA_DIR +RUN unzip $NINJA_FILE -d $NINJA_DIR +RUN rm -f $NINJA_FILE + +ENV PATH=$NINJA_DIR:$PATH