[linux-arm] Use linaro toolchain with gcc 4.7 (for old glibc)

Signed-off-by: Steeve Morin <steeve.morin@gmail.com>
This commit is contained in:
Steeve Morin 2014-11-06 17:14:52 +01:00
parent f9e5b76877
commit 825cd8610c
No known key found for this signature in database
GPG Key ID: 6323FE5975269E7A

View File

@ -1,22 +1,16 @@
# Can't use steeve/cross-compiler:base because gcc-linaro-arm-linux-gnueabihf-raspbian
# requires GLIBC 2.14 and we have 2.13 on wheezy.
FROM debian:jessie
FROM steeve/cross-compiler:base
MAINTAINER Steeve Morin "steeve.morin@gmail.com"
RUN apt-get update && apt-get -y install \
bash \
curl wget \
pkg-config build-essential make automake autogen \
tar xz-utils bzip2 gzip \
file \
rsync \
sed \
vim
ENV CROSS_TRIPLE arm-linux-gnueabihf
ENV CROSS_ROOT /usr/${CROSS_TRIPLE}
ENV PATH ${PATH}:${CROSS_ROOT}/bin
ENV LD_LIBRARY_PATH ${CROSS_ROOT}/lib:${LD_LIBRARY_PATH}
ENV RASPBERRYPI_TOOLS_COMMIT 9c3d7b6ac692498dd36fec2872e0b55f910baac1
# Enable 32 bits binaries
RUN dpkg --add-architecture i386 && \
apt-get update && \
apt-get install -y libstdc++6:i386 libgcc1:i386 zlib1g:i386
# Raspberry Pi is ARMv6+VFP2, Debian armhf is ARMv7+VFP3
# Since this Dockerfile is targeting linux-arm from Raspberry Pi onward,
@ -24,8 +18,9 @@ ENV LD_LIBRARY_PATH ${CROSS_ROOT}/lib:${LD_LIBRARY_PATH}
# We could use Debian's armel, but we'd have softfp and loose a good deal
# of performance.
# See: https://wiki.debian.org/RaspberryPi
RUN curl -L https://github.com/raspberrypi/tools/archive/master.tar.gz | tar xvz --wildcards --no-anchored "*gcc-linaro-${CROSS_TRIPLE}-raspbian-x64*" && \
rsync -av /tools-master/arm-bcm2708/gcc-linaro-${CROSS_TRIPLE}-raspbian-x64/* /usr && \
# We are also using the 4.7 version of the toolchain, so that glibc=2.13
RUN curl -L https://github.com/raspberrypi/tools/archive/${RASPBERRYPI_TOOLS_COMMIT}.tar.gz | tar xvz --wildcards --no-anchored "*gcc-linaro-${CROSS_TRIPLE}-raspbian*" && \
rsync -av /tools-${RASPBERRYPI_TOOLS_COMMIT}/arm-bcm2708/gcc-linaro-${CROSS_TRIPLE}-raspbian/* /usr && \
cd /usr/bin && \
ln -s ${CROSS_TRIPLE}-gcc ${CROSS_TRIPLE}-cc && \
rm -rf /tools-master
rm -rf /tools-${RASPBERRYPI_TOOLS_COMMIT}