Seite 1 von 1

[gelöst] Linken von statischen Bibliotheken unter Mac OS

Verfasst: 6. September 2009 03:13
von Wolferl2
Hallo,

ich hänge schon die ganze Nacht an einem Problem, dass ich einfach nicht in den Griff bekomme:

Ich möchte unter QT 4.5.x mit dem QtCreator auf dem Mac eine statische Bibliothek linken. Die Library liegt als .a Datei und als .dylib vor. Ich würde gerne statisch linken, damit es beim Installieren weniger Probleme gibt...

Nun denn. Die Bibliotheken liegen im Verzeichnis

/Library/MeinZeugs/libMeineLib.a
/Library/MeinZeugs/meineLib.dylib

In meiner Pro Datei steht drin:

macx {
LIBS+= -LLibrary/MeinZeugs/ -llibMeineLib.a
# LIBS+= -LLibrary/MeinZeugs/ -lmeineLib.dylib
}

Ich habe nun schon alles erdenkliche probiert, mit
LIBS+= -LLibrary/MeinZeugs/ -llibMeineLib.a
LIBS+= -LLibrary/MeinZeugs -llibMeineLib.a
LIBS+= -LLibrary/MeinZeugs/ -llibMeineLib
LIBS+= -LLibrary/MeinZeugs -llibMeineLib

Die Meldung ist immer

ld: library not found for -llibMeineLib.a

Die Frage ist nun, was mache ich falsch???

Ich habe zum Vergnügen mal versucht unter XCode die Bibliothek zu nutzen, nach 2 Stunden hat es geklappt, von dort kann ich linken und auch die Bibliothek nutzen. Aber ich mag den QtCreator, so dass ich nicht das ganze Projekt nach XCode portieren möchte (unter Windows nehme ich auch den QtCreator, nur zum Debuggen gehe ich noch auf MSVC).

Nun denn, ich würde mich freuen, wenn irgendjemand eine Idee hat, wie ich die .a Datei (oder zur Not auch die dynamische Lib) verwenden kann.

Ist denn so eine .a automatisch eine Universal Binary? Auf meinem Intel Mac läuft es jedenfalls? Klappt das dann auch auf PowerPC???

Danke schon mal

Wolfgang

Verfasst: 6. September 2009 12:31
von solarix
ld: library not found for -llibMeineLib.a

Die Frage ist nun, was mache ich falsch???
Das steht eigentlich in jedem gcc-Tutorial (google).. wie z.B.:
http://www.network-theory.co.uk/docs/gc ... ro_17.html

Bei libNAME.a lautet die Linkeranweisung -lNAME.

Danke!

Verfasst: 6. September 2009 15:13
von Wolferl2
Hallo Solarix,

Danke, Du hast den Tag gerettet.

Entschuldige die wirklich dumme Frage - aber meine Linux-Zeiten sind schon über 15 Jahre her (ja, so alt ist Linux schon) und mir war es einfach nicht mehr präsent. Nach so langer Zeit mit Windows-Geklicke war ich das einfach nicht mehr gewohnt.

Wenn ich gewusst hätte, wo ich nach schauen muss, hätte ich es auch alleine Gefunden - so aber nochmals herzlichen Dank für Deine Hilfe!

Wolfgang