On Fri, Jul 10, 2015 at 8:49 AM, strongq strongq@codeaurora.org wrote:
First build this: ../abe/abe.sh --target aarch64-none-elf –build all Then do 2nd round build: ../abe/abe.sh –host i686-w64-mingw32 --target aarch64-none-elf –build all
I just tried this on an Ubuntu 14.04 LTS system using the master branch of abe, and the build completed successfully. Not obvious why it didn't work for you.
I did manage to find a minor abe bug, but it didn't stop the build from completing.
However, I’m getting config error while it building libiberty: configure:5946: checking for library containing strerror Configure:5978: error: Link tests are not allowed after GCC_NO_EXECUTABLES. My understanding is that the linker cannot find glibc or eglibc.
Neither mingw32 nor aarch64-elf use glibc/eglibc. They both use newlib. The issue here is that you can't try linking until after you have built gcc and installed its startfiles and libraries. However, gcc needs to do target feature tests as part of its configuration. The solution is that in the gcc configure scripts we try to avoid feature tests that require linking for cross compilers, and if we can't avoid it, then we hard code in the correct answer for known libraries like newlib and glibc.
Anyways, it isn't obvious from the error what is wrong. You need to look at the config.log file in the directory that failed to configure. This will contain info about the configure tests that were run in this dir, and the last one will be the one that failed. You then need to look at this test to see why it failed. In this case, the real error may be earlier, where GCC_NO_EXECUTABLES was set.
If this was the host (i686-w64-mingw32) libiberty that failed, then maybe there is a problem with your i686-w64-mingw32-gcc binary. Can you build a hello world program with it?
Jim