<div dir="ltr">After <a href="https://github.com/rust-lang/rust/pull/47018">https://github.com/rust-lang/rust/pull/47018</a> got merged I was able to cross build to armel (but not tested) using this docker file<br><br>FROM ubuntu:17.10<br><br>RUN apt-get update && apt-get install -y --no-install-recommends \<br> g++ \<br> make \<br> file \<br> curl \<br> ca-certificates \<br> python2.7 \<br> git \<br> cmake \<br> sudo \<br> xz-utils \<br> zlib1g-dev \<br> g++-arm-linux-gnueabi \<br> bzip2 \<br> patch \<br> libssl-dev \<br> pkg-config<br><br>WORKDIR /tmp<br><br>ENV TARGETS=armv4t-unknown-linux-gnueabi<br><br>RUN echo "#!/bin/sh\narm-linux-gnueabi-gcc -Wl,--allow-multiple-definition \"\$@\"" > /usr/bin/arm-linux-gnueabi-gcc2<br>RUN chmod +x /usr/bin/arm-linux-gnueabi-gcc2<br>RUN cat /usr/bin/arm-linux-gnueabi-gcc2<br><br>ENV CC_armv4t_unknown_linux_gnueabi=arm-linux-gnueabi-gcc2 \<br> CFLAGS_armv4t_unknown_linux_gnueabi="-march=armv4t -marm -mfloat-abi=soft" \<br> CXX_armv4t_unknown_linux_gnueabi=arm-linux-gnueabi-g++ \<br> CXXFLAGS_armv4t_unknown_linux_gnueabi="-march=armv4t -marm -mfloat-abi=soft"<br><br># Suppress some warnings in the openwrt toolchains we downloaded<br>ENV STAGING_DIR=/tmp<br><br>ENV RUST_CONFIGURE_ARGS \<br> --target=$TARGETS \<br> --host=$TARGETS<br>ENV SCRIPT python2.7 ../x.py dist --host $TARGETS --target $TARGETS<br><br># sccache<br>COPY scripts/sccache.sh /scripts/<br>RUN sh /scripts/sccache.sh<br clear="all"><div><br><br></div><div>Ubuntu 17.10 was necessary because it has a recent gcc (with fix for <a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727621">https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727621</a>)<br><br></div><div>--allow-multiple-definition hack was necessary because function __sync_fetch_and_add_4 (and similar) is defined in libgcc and compiler_builtins (<a href="https://github.com/rust-lang-nursery/compiler-builtins/pull/115">https://github.com/rust-lang-nursery/compiler-builtins/pull/115</a>)<br></div><div><br>-- <br><div class="gmail_signature">Marco A L Barbosa<br><a href="http://malbarbo.pro.br" target="_blank">http://malbarbo.pro.br</a><br>--</div>
</div></div>