Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Wie erstelle ich eine .a Datei?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Westbeam



Anmeldungsdatum: 22.12.2009
Beiträge: 760

BeitragVerfasst am: 26.09.2011, 18:55    Titel: Wie erstelle ich eine .a Datei? Antworten mit Zitat

Hi

Ich habe hier eine .so und eine .dll Bibliothek und möchte eine .a Datei daraus machen. Aber wie?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 26.09.2011, 19:01    Titel: Antworten mit Zitat

Aus einer bestehende DLL kannst du mit pexports eine .a generieren. Wie das mit .so ist, weiß ich jetzt leider nicht. Am einfachsten ist es natürlich, wenn man den Source hat und es selbst compilieren kann, da kann man die .a gleich mitgenerieren.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 26.09.2011, 21:41    Titel: Antworten mit Zitat

a Dateien erzeugst du üblicherweise mit dem Packprogramm ar
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 27.09.2011, 11:07    Titel: Antworten mit Zitat

Kopf schütteln Haha....

Hier ist das sehr gut erklärt:
http://www.freebasic.net/forum/viewtopic.php?p=145529&highlight=pexports#145529

Code:
pexports xyz.dll > xyz.def
dlltool.exe -l libxyz.a -D xyz.dll -d xyz.def


Was noch wichtig ist, von der dll solltest du eine Header-Datei haben um zu erfahren welche Prozeduren mit welchen Parametern darin stecken.
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 27.09.2011, 17:08    Titel: Antworten mit Zitat

volta hat Folgendes geschrieben:
Kopf schütteln Haha....

Das war ausnahmsweise mal kein Witz; ar wird auch in diesem Zusammenhang gebraucht (mal ganz ab davon, dass die ganzen GCC-Tools ar intern nutzen): http://www.hackerboard.de/programmierung/43294-mingw-gcc-bibliotheken-neu-linken.html
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Westbeam



Anmeldungsdatum: 22.12.2009
Beiträge: 760

BeitragVerfasst am: 27.09.2011, 19:13    Titel: Antworten mit Zitat

Danke, ich habe es mit pexports und volta's Lösung geschafft. zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sannaj



Anmeldungsdatum: 19.12.2010
Beiträge: 35

BeitragVerfasst am: 02.10.2011, 23:31    Titel: Antworten mit Zitat

Ne das mit dem ar stimmt wirklich. Deshalb steht .a ja auch für "Archiv". ar wurde allerdings von seinem Nachfolger tar dazu degradiert, Objektdateien zu sammeln.

Deshalb frag ich mich warum eingentlich keine flache Objectdatei ausreicht. Der wirkliche Vorteil von .a, nämlich dass man nicht alle Teilobjecte linken muss, wird nämlich bei der Rückumwandlung nicht eingesetzt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 03.10.2011, 01:50    Titel: Antworten mit Zitat

Wenn du eine Linkerlib zum dyn. Binden erstellst, linkst du ja eh gegen die DLL, die der Linker nicht anfässt. Daher ist es eh egal, ob er alles mit reinpackt oder nicht, sind eh nur +-20 Byte (grob)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz