Montage-Fehler beim kompilieren mit GCC

Ich bin immer "no such instruction" Fehler beim kompilieren ein .s Datei mit diesem Befehl:

$ gcc -s -o scall scall.s
scall.s: Assembler messages:
scall.s:2: Error: no such instruction: `section '
scall.s:4: Error: no such instruction: `global _start'
scall.s:7: Error: unsupported instruction `mov'
scall.s:8: Error: unsupported instruction `mov'
scall.s:11: Error: operand size mismatch for `int'
scall.s:13: Error: no such instruction: `section .data'
scall.s:15: Error: no such instruction: `msglength .word 12'

Hier ist der code der Datei:

section .text
    global _start

_start:
    mov 4,%eax
    mov 1,%ebx
    mov $message,%ecx
    mov $msglength,%edx
    int  $0x80

section .data
   message: .ascii "Hello world!"
   msglength .word 12

Wie kann ich loswerden der Fehler?

  • Warum nennst du gcc zu kompilieren, dass? gcc ist ein C-compiler, verwenden Sie as oder ähnlichem Werkzeug.
  • Das ist es, was wir mit der Schule jetzt.
  • unsupported instruction 'mov' keinen Sinn macht. mov aus einer absoluten Adresse ist eine gültige Anweisung, die sollte montieren, es ist nur nicht die, die Sie wollen. Aktuelle gcc / binutils nur beschwert sich über den tatsächlichen Fehler (section und global, und die fehlenden : nach msglength)
InformationsquelleAutor nelthas | 2015-02-03
Schreibe einen Kommentar