qmake LIB Template

Verschiedenes zu Qt
Antworten
gergap
Beiträge: 3
Registriert: 10. November 2004 14:05
Kontaktdaten:

qmake LIB Template

Beitrag von gergap »

Hallo zusammen,

ich habe folgendes Problem.
Ich habe mehrere statische libraries deren makefile mittels qmake erstellt werden.

Dann habe ich eine Library die selber wieder die anderen dazulinken soll.
Also eine Library die alle meine Module zusammenfasst.
So braucht eine Applikation nur noch diese eine Lib dazulinken.

Das Problem ist jetzt, dass bei TEMPLATE=lib anscheinend LIBS+=mylib
anscheinend nichts bewirkt, da ich in der Applikation wieder unresolved external Fehler kriege wenn ich dort nur meine eine Lib linke, die eingenltich alles beinhalten sollte.

Nochmal zu Übersicht:

Library a:
TEMPLATE = lib
TARGET = libA
SOURCES += ...
HEADERS += ...

Library b:
TEMPLATE = lib
TARGET = libB
SOURCES += ...
HEADERS += ...

Library c:
TEMPLATE = lib
TARGET = libC
SOURCES += ...
HEADERS += ...
LIBS += libA libB

Application:
TEMPLATE = app
TARGET = test
SOURCES += ...
HEADERS += ...
LIBS += libC


Weiß jemand wie man das Problem lösen kann?
--
mit freundlichen Grüßen / best regards

Gerhard Gappmeier
ascolab GmbH - automation system communication laboratory
Web: http://www.ascolab.com
GPG-Key: http://www.ascolab.com/pgp/gerhard.asc
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Du linkst damit also nicht statisch, wenn du die Probleme von Unresold Symbols hast. Dazu weiss ich aber leider noch zuwenig von deinen genauen Libs, OS usw.

Wenn du LIBS += lib.a / lib2.a unter Linux machst sind Sie statisch gelinkt, wenn du LIBS += lib.lib / lib2.lib unter Windows linkst, kommts drauf an, ob das nun statisch oder nicht statische Libs sind. Und ich gehe einfach mal davon aus, sind es nicht.

Vielleicht hilft dir ohne weitere Umwege CONFIG += staticlib, allerdings solltest du dann sehen, das dll nicht darin enthalten ist.

Allerdings hätte ich da noch eine Frage? Wieso verlinken Windows Leute alles statisch? Sinn?
Nassian
Beiträge: 126
Registriert: 20. Juni 2005 21:14

Beitrag von Nassian »

Sinn! Nur eine einzige Datei zum Endverbraucher (Okay, geht nur bis zu einer gewissen Größe) und schnelleres Laden.
Machen nicht nur Windowsler.
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

unter Windows versucht man dadruch geren der sogenatten DLL hölle zu entgehen.
Antworten