💾 Archived View for amigadu.de › af › 39616_de.gmi captured on 2022-03-01 at 15:07:33. Gemini links have been rewritten to link to archived content
-=-=-=-=-=-=-
Originale Nachricht im Web aufrufen >
Veröffentlicht: Sonntag, 27 Februar 2022 - 16:10:36 (+0100)
Verfasst von: AndreasM
vlink ist ein portabler in ANSI-C geschriebener Verlinker, der lesen und schreiben kann, eine breite Palette von Objekt-und ausführbare Dateiformate beherrscht. Er kann aus verschiedenen Eingabedateiformate zum Konvertieren in bestimmte Zielformat verwendet werden, Abtrennen und Manipulieren von Dateien.
Der Linker kann über GNU-Stil Skripte gesteuert werden um absoluten Code zu generieren, aber es läuft auch sehr gut mit den Standardregeln um verschiebbare ausführbare Dateien zu erstellen, wie für AmigaOS oder MorphOS erforderlich.
Natürlich kann es technische Einschränkungen bei unterschiedlichen Dateiearchitekturen geben die aufgrund inkompatibler Typen nicht zusammengeführt werden können, Endungen oder Symbol-Namen mit und ohne führenden Unterstriche. Aber in der Theorie ist alles möglich!
http://sun.hasenbraten.de/vlink/
Änderungen:
Fehler beim Verknüpfen verschiedener Objektdateiformate behoben.
Die fehlerhaft formatierte Ausgabe einiger Fehlercodes für 32-Bit-Hosts wurde behoben.
Die Zeichenfolge "DONTMERGE_" innerhalb eines Abschnittsnamens wird durch eine eindeutige ID ersetzt, um optional das Zusammenführen mit einem anderen Abschnitt zu verhindern.
Melden Sie globale Symbolnamenskonflikte von verknüpften Bibliotheksobjekten, außer wenn ihre Definitionsabschnitte zu unterschiedlichen Architekturen gehören (erforderlich zum Verknüpfen gemischter Binärdateien, wie WarpOS 68k/PPC).
Zufällige Werte von illegalen Argumenten für verschiedene "-opt <n>"-Stiloptionen behoben.
Die Zielformatoption (-b) wird jetzt vor jeder anderen Option geparst, sodass zielspezifische Optionen möglicherweise wieder davor erscheinen.
(rawbin) Ausgabe von führenden leeren Abschnitten korrigiert, die kein NOLOAD-Flag haben.
(rawbin) Dateigröße im AMSDOS-Header bei Offset 64 korrigiert.
(a.out) aoutnull muss standardmäßig 32-Bit-Adressen haben.
(a.out) Baserel-(Small-Data-)Verlagerungen kompatibel zu GNU-binutils machen.
(ados/ehf) Erkennung von EHF-Objekten und Bibliotheken korrigiert.
(ados/ehf) Ignoriere frei schwebende Debug-Hunks (SAS/C-Debug?).
(ados/ehf) Neue Option -broken-debug.
(ados/ehf) Fastcall-ABI Konstruktoren/Destruktoren (Symbolnamen beginnend mit '@' statt '_') ersetzen Standard-, wenn Priorität und Name ansonsten identisch sind.
(ados/ehf) Fehler bei der Neudefinition von EHF-Symbolen seit V0.16f behoben.
(tos) Stellen Sie sicher, dass die Datenabschnittsgröße gleichmäßig ist. Versuchen Sie nicht länger, den nicht initialisierten Datenteil zu bss hinzuzufügen.