@@ -22,7 +22,7 @@ RUN dpkg --add-architecture i386 && \
22
22
# dkpg-dev: to make pkg-config work in cross-builds
23
23
# llvm: for llvm-symbolizer, which is used by clang's UBSan for symbolized stack traces
24
24
RUN apt-get update && apt-get install --no-install-recommends -y \
25
- git ca-certificates wget \
25
+ git ca-certificates \
26
26
make automake libtool pkg-config dpkg-dev valgrind qemu-user \
27
27
gcc clang llvm libclang-rt-dev libc6-dbg \
28
28
g++ \
@@ -37,7 +37,8 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
37
37
38
38
# Build and install gcc snapshot
39
39
ARG GCC_SNAPSHOT_MAJOR=14
40
- RUN mkdir gcc && cd gcc && \
40
+ RUN apt-get update && apt-get install --no-install-recommends -y wget libgmp-dev libmpfr-dev libmpc-dev flex && \
41
+ mkdir gcc && cd gcc && \
41
42
wget --progress=dot:giga --https-only --recursive --accept '*.tar.xz' --level 1 --no-directories "https://gcc.gnu.org/pub/gcc/snapshots/LATEST-${GCC_SNAPSHOT_MAJOR}" && \
42
43
wget "https://gcc.gnu.org/pub/gcc/snapshots/LATEST-${GCC_SNAPSHOT_MAJOR}/sha512.sum" && \
43
44
sha512sum --check --ignore-missing sha512.sum && \
@@ -46,14 +47,13 @@ RUN mkdir gcc && cd gcc && \
46
47
[[ $(ls *.tar.xz | wc -l) -eq "1" ]] && \
47
48
tar xf *.tar.xz && \
48
49
mkdir gcc-build && cd gcc-build && \
49
- apt-get update && apt-get install --no-install-recommends -y libgmp-dev libmpfr-dev libmpc-dev flex && \
50
50
../*/configure --prefix=/opt/gcc-snapshot --enable-languages=c --disable-bootstrap --disable-multilib --without-isl && \
51
51
make -j $(nproc) && \
52
52
make install && \
53
- apt-get autoremove -y libgmp-dev libmpfr-dev libmpc-dev flex && \
54
- apt-get clean && \
55
53
cd ../.. && rm -rf gcc && \
56
- ln -s /opt/gcc-snapshot/bin/gcc /usr/bin/gcc-snapshot
54
+ ln -s /opt/gcc-snapshot/bin/gcc /usr/bin/gcc-snapshot && \
55
+ apt-get autoremove -y wget libgmp-dev libmpfr-dev libmpc-dev flex && \
56
+ apt-get clean && rm -rf /var/lib/apt/lists/*
57
57
58
58
# Install clang snapshot, see https://apt.llvm.org/
59
59
RUN \
71
71
ln -s "/usr/bin/clang-${LLVM_VERSION}" /usr/bin/clang-snapshot && \
72
72
# Clean up
73
73
apt-get autoremove -y wget && \
74
- apt-get clean
74
+ apt-get clean && rm -rf /var/lib/apt/lists/*
75
75
0 commit comments