I got a gcc 4.9.3 binary cross compiled with: Configured with: /home/fornwall/termux/gcc/src/configure -disable-dependency-tracking --prefix=/data/data/com.termux/files/usr --disable-rpath --disable-rpath-hack --host=i686-linux-android --enable-languages=c,c++ --with-system-zlib --disable-multilib --disable-lto --with-gmp=/data/data/com.termux/files/usr --with-mpfr=/data/data/com.termux/files/usr --with-mpc=/data/data/com.termux/files/usr --with-stage1-ldflags=-specs=/home/fornwall/dc/termux.spec --with-arch=i686 --with-tune=atom--with-fpmath=sse --disable-nls --enable-shared --disable-static --libexecdir=/data/data/com.termux/files/usr/libexec When compiling a C program, gcc test.c, I get: ld: unrecognised emulation mode: -dynamic-linker Supported emulations: elf_i386 i386linux elf32_x86_64 collect2: error: ld returned 1 exit status due to the following collect2 call (as told by gcc -v test.c) missing an argument to the -mflag: COMPILER_PATH=. LIBRARY_PATH=. COLLECT_GCC_OPTIONS='-v' '-mtune=atom' '-march=i686' /data/data/com.termux/files/usr/libexec/gcc/i686-linux-android/4.9.3/collect2 -m -dynamic-linker -pie /data/data/com.termux/files/usr/lib/gcc/i686-linux-android/4.9.3/../../../crtbegin_dynamic.o -L/data/data/com.termux/files/usr/lib/gcc/i686-linux-android/4.9.3 -L/data/data/com.termux/files/usr/lib/gcc/i686-linux-android/4.9.3/../../.. /data/data/com.termux/files/usr/tmp//ccxXWQIJ.o -lgcc -lc -ldl -lgcc /data/data/com.termux/files/usr/lib/gcc/i686-linux-android/4.9.3/../../../crtend_android.o Where is the the problem? Is --host=i686-linux-android an incorrect host?