2015-08-13 11 views
6

Wir erstellen zwei statische Bibliotheken, nennen wir sie LibA und LibB.Zusammenführen von Debug-Informationen beim Zusammenführen von statischen Bibliotheken

In Visual Studio habe ich eine Lösung mit Projekt A & ProjektB eingerichtet, so dass ich für ProjektB unter Configuration Properties -> Librarian -> General -> Additional Dependencies LibA hinzugefügt habe. Dies bewirkt, dass VS LibA in den generierten LibB einfügt. Dies geschieht, da wir nicht ändern möchten, welche statischen Bibliotheken wir an Kunden versenden.

Jetzt werden sowohl LibA als auch LibB mit 'Program Database' als Debug-Informationsformat erstellt, und sobald ich LibB in die finale Binärdatei verlinke, erhalte ich Warnungen, dass LibA.pdb nicht gefunden wird. Das lässt mich glauben, dass die Debug-Informationen von LibA nicht mit LibB zusammengeführt werden, also würde ich das gerne selbst machen. Allerdings kann ich dafür keine Werkzeuge finden. Auch hier würde ich lieber keine extra Datei versenden.

Eine Problemumgehung, an die ich gedacht habe, aber noch nicht versucht habe, wäre es, LibA mit 'C7-kompatibel' als Debug-Informationsformat zu erstellen. Hoffentlich wäre Visual Studio schlau genug, um diese Informationen zu extrahieren und sie dem für LibB erstellten pdb hinzuzufügen.

+1

Mögliches Duplikat von [Wie füge ich mehrere PDB-Dateien zusammen?] (Http://stackoverflow.com/questions/528105/how-do-i-merge-multiple-pdb-files) –

+0

Mögliche dup von [Einschließlich. PDB-Dateien mit Bibliothekar in Visual Studio] [1]? [1]: http://stackoverflow.com/a/14276129/1823963 – malchemist

Antwort

-1

Es gibt eine weitere Option, die in ProjektB festgelegt werden muss.

See: https://msdn.microsoft.com/query/dev12.query?appId=Dev12IDEF1&l=EN-US&k=k(VC.Project.VCLibrarianTool.LinkLibraryDependencies)&rd=true

In ProjectB Eigenschaften die folgende Option Yes.

LinkLibraryDependencies Optionaler boolescher Parameter. Wenn das stimmt, gibt an, dass Bibliothek Ausgaben von Projektabhängigkeiten werden automatisch in verknüpft.

So wird libb alles von Liba umfassen.

Verwandte Themen