D'erreur lorsque vous essayez d'exécuter .fichier asm sur MSNA sur Ubuntu

Je suis sur ubuntu 64 bits et en essayant de lancer une .fichier asm sur MSNA. Mais elle renvoie cette erreur lorsque j'essaie d'exécuter le code suivant. Ce Iḿ essayer de faire est de créer un fichier exécutable par la compilation (ou assemblage) fichier de l'objet à partir de la source
$ nasm -f elf hello.asm, et puis après avoir créé le fichier hello.o est la production de fichier exécutable à partir du fichier de l'objet par l'invocation de l'éditeur de liens

$ ld -s -o hello hello.o

Ce sera de construire, finalement, bonjour exécutable.

Je suis en suivant ce tutoriel http://www.faqs.org/docs/Linux-HOWTO/Assembly-HOWTO.html

Erreur:

architecture i386 de fichier d'entrée " bonjour.o' est incompatible avec i386:x86-64 sortie

Code:

     section .data              ;section declaration

 msg     db      "Hello, world!",0xa    ;our dear string
 len     equ     $ - msg                 ;length of our dear string

 section .text              ;section declaration

             ;we must export the entry point to the ELF linker or
     global _start       ;loader. They conventionally recognize _start as their
             ;entry point. Use ld -e foo to override the default.

 _start:

 ;write our string to stdout

         mov     edx,len ;third argument: message length
         mov     ecx,msg ;second argument: pointer to message to write
         mov     ebx,1   ;first argument: file handle (stdout)
         mov     eax,4   ;system call number (sys_write)
         int     0x80   ;call kernel

  ;and exit

     mov    ebx,0   ;first syscall argument: exit code
         mov     eax,1   ;system call number (sys_exit)
         int     0x80   ;call kernel
InformationsquelleAutor rogcg | 2010-11-23