Incompatibilidade do Assembly de Alto Nível no Kali Linux Rolling

0

Depois de ler a "Arte da Linguagem de Montagem", obtive a linguagem da Assembleia de Alto Nível no site listado no livro. Depois de editar meu arquivo .bashrc, eu compilei meu canônico "Hello world!" programa usando

hla helloworld.hla

Isso retornou esse erro:

    ld: i386 architecture of input file 'helloworld.o' is incompatible with 
    i386:x86-64 output 
    ld: i386 architecture of input file '/usr/hla/hlalib  
    /hlalib.a(ex_hwExcept.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(ex_Raise.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(ex_buildexcepts.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(ex_InstallSignals.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(ex_abstract.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(ex_excepts.o)' is incompatible with i386:x86-64 output  
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(ex_dfltexcept.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(so_puts.o)' 
    is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib  
    /hlalib.a(str_catu32.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(str_cath32.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib 
    /hlalib.a(str_cat2.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(str_catd.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(str_cats.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(str_catu64size.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib
    /hlalib.a(str_init.o)' is incompatible with i386:x86-64 output
    ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(str_cpy.o)' 
    is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(linux_write.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(linux_sigaction.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(linux_exit.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_dToStr.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_u64tostr.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_underscores.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_h32ToStr.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(hexTbL.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(fio_puts.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(fio_putssize.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(fileio_write.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(hla_get_set_OutputUnderscores.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(stdoutvars.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_u64tobuf.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv__hexTobuf32Size.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_u64size.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_u32size.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv_h32Size.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv__hexTobuf32.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(hexDigitsData.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(fio__putpad.o)' is incompatible with i386:x86-64 output
ld: i386 architecture of input file '/usr/hla/hlalib/hlalib.a(conv__unsTobuf64.o)' is incompatible with i386:x86-64 output
Error returned by ld = 256

Eu sinto que isso é um erro de compatibilidade, já que estou no Linux x64, enquanto o livro anunciava o HLA como x86 compatível. Eu olhei para as bandeiras do HLA e não há parâmetros que eu possa definir para mudar isso. O que posso fazer?

    
por UncleAlan 04.07.2016 / 17:32

1 resposta

0

Um google para hla de 64 bits encontra, por exemplo, este artigo do fórum que diz que você pode passar uma opção para o carregador para fazer uma versão de 32 bits com:

hla -lmelf_i386 -v helloWorld

Há mais discussões em este blog . Você pode precisar instalar um pacote 32 como glibc.i686 .

    
por 04.07.2016 / 19:52