lib.exe, Visual Studio, erzeugt .lib-Dateien aus den Dateien dll und def

8

Ich bin neu in Windows und Visual Studio. Ich muss einen Code in C ++ kompilieren. Es verwendet verschiedene Bibliotheken. Ich habe die DLL-Dateien für diese Bibliotheken gefunden. Ich kann die Quelle ohne Probleme kompilieren, aber es gibt Verbindungsprobleme. Ich weiß nicht, wie man DLL-Dateien verbindet. Ich habe verstanden, dass ich .lib-Dateien dafür brauche. Aber einige der benötigten Bibliotheken haben keine lib-Dateien zur Verfügung gestellt. Es gibt nur DLL-Dateien und Diff-Dateien. Wie kann ich die benötigten lib-Dateien mit Visual Studio 2010 ultimate generieren? Ich kann kein Programm namens lib.exe finden. Danke.

    
delete_this_account 17.03.2011, 19:04
quelle

3 Antworten

14

Sie werden tatsächlich lib.exe benötigen, um die .def-Datei in eine .lib-Datei umzuwandeln, die der Linker benötigt. Sie wird standardmäßig im Verzeichnis vc \ bin des Visual Studio-Verzeichnisses C: \ Programme \ Microsoft Visual Studio 10.0 \ VC \ bin \ lib.exe gespeichert. Am einfachsten ist es, die "Visual Studio-Eingabeaufforderung" zu verwenden. Sie finden sie im Startmenü unter Microsoft Visual Studio 2010, Visual Studio Tools.

Als nächstes führen Sie lib.exe mit der Option /def:foo.def aus, um die .lib zu generieren. Befolgen Sie die Anweisungen des Herstellers, falls angegeben. Und zögern Sie nicht, sie für Unterstützung zu kontaktieren.

    
Hans Passant 17.03.2011, 19:37
quelle
2

Wenn Sie zu den Projekteigenschaften für die DLL gehen und Linker prüfen - & gt; Erweitert gibt es einen Eintrag für 'Bibliothek importieren'. Möglicherweise müssen Sie festlegen, dass beim Erstellen der DLL eine lib-Datei generiert wird, oder wenn sie bereits festgelegt ist, sollte sie auf den Speicherort der lib-Datei verweisen.

Wenn Sie das gesamte Projekt mit Visual Studio 2010 erstellen, sollte das Hinzufügen der abhängigen Bibliotheken im Referenzabschnitt des Common Properties des Projekts automatisch die erforderlichen Linkanweisungen auslösen.

    
Timo Geusch 17.03.2011 19:18
quelle
2

Dies erfordert viel Arbeit, und normalerweise ist es einfacher, nach der Quelle und / oder den Bibliotheken für die benötigten DLLs zu suchen, da es eine gute Idee ist, sowohl Bibliotheken als auch Ihr Programm mit demselben Compiler zu kompilieren , also sind Sie nicht von mehreren VC-Laufzeiten abhängig).

Sie können diese Anleitung verwenden, um die .lib-Dateien zu erstellen: Ссылка

Es ist ein Prozess, der Zeit benötigt, ebenso wie eine Menge Debugging (abhängig von der Größe der DLLs und der Komplexität der Schnittstellen der DLL)

Abhängig von Ihrer Plattform lautet der Ort normalerweise:

  • Windows 7 32-Bit mit 32-Bit VS2010:

    C: \ Programme \ Microsoft Visual Studio 10.0 \ VC \ bin \

  • Windows 7 64-Bit mit 64-Bit VS2010:

    C: \ Programme \ Microsoft Visual Studio 10.0 \ VC \ bin '

  • Windows 7 64-Bit mit 32-Bit VS2010:

    C: \ Programme (x86) \ Microsoft Visual Studio 10.0 \ VC \ bin \

Wenn Sie die Visual Studio-Eingabeaufforderung jedoch starten, sollte es in Ihrem Pfad sein. (Sehen Sie unter Visual Studio Tools in Ihrem Startmenü nach)

    
leifcr 17.03.2011 19:18
quelle

Tags und Links