Bibliothek statisch einbinden
-
Hi!
Ich benutze das VS 2005 EE und C++ unamaged.
In einem Projekt verwende ich eine Libary, von der ich nebst Doku und Header Files eine .lib und eine.dll habe. Die .lib liegt in einem dem Linker bekannten Verzeichnis. Zusammen mit der .dll Datei ist mein Programm lauffähig.
Wie binde ich die Bibliothek statisch ein, so dass ich auf die .dll nict mehr angewiesen bin?
Danke!!
-
Hallo,
Gar nicht. Wenn du den Code für diese Lib hast kannst du dir eine statische Lib erzeugen und die dann einbinden. Ohne dem geht es nicht.
-
OK, dann ein anderes Problem:
Die .lib habe ich nicht explizit eingebunden, genausowenig die .dll, sondern nur die .h der Lib.
Kann ich trotzdem beim Programmstart abfangen, ob die Lib vorhanden ist, und dann gesondert darauf reagieren? (z.B. ein Programmablauf ohne die Funktionalität der libary oder eine spezifische Fehlermeldugn)
Danke!
-
Die Lib dürfte eigentlich automatisch vom Linker integriert werden. Aber du kannst auch die .lib (und .h) weglassen und direkt über LoadLibrary()/GetProcAdress() auf die DLL-Funktionen zugreifen.
(ist aber reichlich aufwendig - und idR nicht zu empfehlen)
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.