Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Maybe you target triplet is different from i686-elf? Autotools may consider this as a sign of hosted environment. I met similar error because of invalid target triplet, however during compilation of my project, not the cross-compiler itself. Don't you compile your cross-compiler with other cross-compiler for freestanding environment?