gcc und die output-Formate



  • kreuzsammler schrieb:

    Du willst also einen cross-compiler bauen. Dazu gibt es tausende Anleitungen im Web.

    Jaein. Ich will einen gcc, der einfach alle Formate, die der gcc in der Theorie unterstützt, auch praktisch unterstützt.

    Das geht über die meisten Tutorial zu cross-compilern.

    Schließlich ist dies eine Sache der Konfiguration, d.h. ich muss irgendwelche Parameter zu "./configure" hinzufügen.



  • *** push *** schrieb:

    Jaein. Ich will einen gcc, der einfach alle Formate, die der gcc in der Theorie unterstützt, auch praktisch unterstützt.

    Das geht über die meisten Tutorial zu cross-compilern.

    Schließlich ist dies eine Sache der Konfiguration, d.h. ich muss irgendwelche Parameter zu "./configure" hinzufügen.

    Dann füge doch irgendwelche Parameter zu configure hinzu. Das ist doch mal ein Ansatz.

    Welche Formate meinst Du überhaupt? Willst Du einen Compiler, der für alle unterstützten Prozessorarchitekturen Code erzeugen kann? Und welchen Sinn macht das überhaupt? Was willst Du erreichen? Hast Du überhaupt alle unterstützten Prozessorarchitekturen zur Verfügung?



  • ich bins schrieb:

    Dann füge doch irgendwelche Parameter zu configure hinzu. Das ist doch mal ein Ansatz.

    🙄 Solche Kommentare sind weder hilfreich noch lustig.

    ich bins schrieb:

    Welche Formate meinst Du überhaupt? Willst Du einen Compiler, der für alle unterstützten Prozessorarchitekturen Code erzeugen kann? Und welchen Sinn macht das überhaupt? Was willst Du erreichen? Hast Du überhaupt alle unterstützten Prozessorarchitekturen zur Verfügung?

    Wo habe ich denn irgendwas von Prozessorarchitekturen geschrieben?

    Ich will einfach, dass der gcc alle Formate, die er theoretisch für i386 unterstützt, eben auch tatsächlich als output-Format unterstützt.



  • Was verstehst du unter einem "output-Format"? ELF?



  • Tippgeber schrieb:

    Was verstehst du unter einem "output-Format"? ELF?

    ELF, PE, aout, coff usw.



  • *** push *** schrieb:

    Tippgeber schrieb:

    Was verstehst du unter einem "output-Format"? ELF?

    ELF, PE, aout, coff usw.

    Da musst du etwas aufpassen.

    Der GCC kann zwar theoretisch viele Formate ausgeben, aber in der Praxis ist er eigentlich auf ELF spezialisiert.

    Du solltest daher immer zuerst ein ELF erzeugen und das dann in einem zweiten Schritt in das Zielformat konvertieren.

    Andernfalls kann es passieren, dass du eine korrumpierte Ausgabedatei hast und dich wunderst weshalb dein Programm nicht funktioniert. (Wer verdächtigt im ersten Schritt schon die Toolchain?)

    Zu deiner Frage kann ich dir allerdings nicht direkt helfen. Hast du dir schon einmal die verfügbaren Parameter über

    ./configure --help
    

    angesehen?



  • Tippgeber schrieb:

    Du solltest daher immer zuerst ein ELF erzeugen und das dann in einem zweiten Schritt in das Zielformat konvertieren.

    Ok, wie, bzw. mit welchem Programm?



  • ???



  • *** push *** schrieb:

    Tippgeber schrieb:

    Du solltest daher immer zuerst ein ELF erzeugen und das dann in einem zweiten Schritt in das Zielformat konvertieren.

    Ok, wie, bzw. mit welchem Programm?

    Mit objcopy aus den Binutils.



  • Tippgeber schrieb:

    *** push *** schrieb:

    Tippgeber schrieb:

    Du solltest daher immer zuerst ein ELF erzeugen und das dann in einem zweiten Schritt in das Zielformat konvertieren.

    Ok, wie, bzw. mit welchem Programm?

    Mit objcopy aus den Binutils.

    Danke!!! Damit wär wohl alles geklärt.


Anmelden zum Antworten