Se você usa scripts para link edição e simplesmente não fez quaisquer alteração nele provavelmente obteve um erro analago:
ld: i386 architecture of input file `loader.o' is incompatible with i386:x86-64 output
Isso é por que o ld está tentando linkar em modo 64 bits objectos 32 bits. Não tem milagre que de jeito. O caminho é reconfigurar o script.
Em geral basta acrescentar as linhas no inicio do arquivo:
- OUTPUT_FORMAT(“elf32-i386″);
- OUTPUT_ARCH(i386);
Se vc não usa um script para fazer as ligações pode obter o mesmo efeito usando o comando:
ld --oformat=elf32-i386 RESTANTE_DAS_FLAGS