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?
qmake LIB Template
qmake LIB Template
--
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
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
-
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten:
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?
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?
-
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten: