3 Stimmen

Referenzierte Bibliotheken in Visual Studio 2010-Projekten

Sagen wir, ich habe eine C++ Visual Studio 2010-Lösung mit 2 Projekten: ein Hauptprojekt mit dem Programmanfangspunkt und ein zweites Projekt mit einer statischen Bibliothek (verknüpft mit dem Hauptprojekt), die in anderen VS2010-Lösungen verwendet wird.

Das statische Bibliotheksprojekt verwendet eine zusätzliche Drittanbieterbibliothek (.lib). Derzeit ist diese Drittanbieter-Static-Bibliothek im Feld Zusätzliche Abhängigkeiten des Linkers -> Eingabeabschnitts der Eigenschaftenseiten des Hauptprojekts festgelegt, um das gesamte Programm kompilieren zu können.

Meine Frage ist, gibt es eine Möglichkeit, diese Abhängigkeit im statischen Bibliotheksprojekt selbst hinzuzufügen, sodass ich sie nicht manuell in jedem der Hauptprojekte aus den verschiedenen VS2010-Lösungen hinzufügen muss, in denen das statische Bibliotheksprojekt enthalten ist?

Gibt es verschiedene Möglichkeiten, dies zu tun? Kann ich entscheiden, diese Drittanbieterbibliothek in die .lib einzubetten, die vom statischen Bibliotheksprojekt generiert wird? Gibt es bewährte Verfahren oder Empfehlungen, wie man das macht?

Danke!

1voto

Tom Whittock Punkte 3981

Eine statische Bibliothek ist genauso wie jede andere Ausgabe des Linkers - Sie können zusätzliche Abhängigkeiten in den 'Bibliotheks-Optionen' Ihres statischen Bibliotheksprojekts hinzufügen und sie werden wie gewohnt verknüpft.

1voto

CodeWeed Punkte 869

Ihr statisches Bibliotheksprojekt verwendet eine Drittanbieter-Statikbibliothek. Sie müssen die Bibliothek nur verknüpfen, wenn Sie Ihre statische Bibliothek erstellen, und Ihre statische Bibliothek muss nicht die Drittanbieter-Bibliothek mitliefern, sondern nur Ihre Bibliothek. Ihre statische Bibliothek enthält alle erforderlichen Binärteile aus der Drittanbieter-Statikbibliothek in Ihrer statischen Bibliothek.

Wenn Sie keine der Funktionen aus der Drittanbieterbibliothek verwenden (d.h. wenn Ihre statische Bibliothek die Funktionalität für alle anderen Projekte bereitstellt), müssen Sie die Drittanbieter-Statikbibliothek nicht erneut verknüpfen. Verwenden Sie stattdessen Ihre statische Bibliothek.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X