When libpthread tries to link against "libihash.so" I get the error:
/lib/libihash.so: file not recognized: File format not recognized. This happens because libihash was built using the native compiler. So I changed the flag in libihash configure to "--host" so it will use the cross-compiler. But then I got the error "configure:3008: error: C compiler cannot create executables." I read the config.log file and the problem arise from this /../gcc-cross-sans-libc-i686-pc-gnu-4.8.2/libexec/gcc/i686-pc-gnu/ld: cannot find crt1.o: No such file or directory /../gcc-cross-sans-libc-i686-pc-gnu-4.8.2/libexec/gcc/i686-pc-gnu/ld: cannot find crti.o: No such file or directory /../gcc-cross-sans-libc-i686-pc-gnu-4.8.2/libexec/gcc/i686-pc-gnu/ld: cannot find -lc /../gcc-cross-sans-libc-i686-pc-gnu-4.8.2/libexec/gcc/i686-pc-gnu/ld: cannot find crtn.o: No such file or directory It tries to compile a program, but cannot find these files, so it fails. But in order to have them we need glibc. We have a circular dependency glibc+libpthread -> libihash -> glibc, so I guess an intermediate glibc is our only option. Or is there another way?