Mensagem de erro ao executar o comando “make”: / usr / bin / ld: a arquitetura i386 do arquivo de entrada é incompatível com a saída i386: x86-64

0

Não consigo criar um arquivo executável funcional executando o comando make em uma árvore construída anteriormente em uma máquina i386. Estou recebendo uma mensagem de erro na forma de

me@me-desktop:~$  make
/usr/bin/ld: i386 architecture of input file '../.. /Lib/libProgram.a(something.o)' is incompatible with i386:x86-64 output

Foi-me dito e assegurou que este programa foi testado e compilado com sucesso no Fedora de 64 bits.

Estou executando uma máquina de 64 bits

me@me-desktop:~$  uname -m
x86_64

Estou executando o Ubuntu 10.04

me@me-desktop:~$  lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu 10.04.3 LTS
Release:    10.04
Codename:    lucid

Estou usando o g ++

# me@me-desktop:~$ g++ --version
g++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Eu também estou usando o libtool

# me@me-desktop:~$ libtool --version
ltmain.sh (GNU libtool) 2.2.6b
Written by Gordon Matzigkeit <[email protected]>, 1996

Alguma pista sobre o que está errado?

    
por user784637 07.09.2011 / 23:05

1 resposta

3

Existem algumas possibilidades:

  • precisa executar ./configure antes do make (se copiado do 386-machine)
  • precisa executar ./autogen.sh (se for retirado do controle de versão sem script de configuração fornecido)
por aquaherd 07.09.2011 / 23:14