2012-05-18 14 views
6

W Visual Studio 2003, czy mogę połączyć się z biblioteką, która nie posiada odpowiedniego pliku PDB, pojawia się ostrzeżenie:Określ ścieżkę PDB w Visual Studio 2003

foo.lib (bar.obj) : ostrzeżenie LNK4099: nie znaleziono PDB "other.pdb"; łącząc przedmiot, jakby bez informacji debugowania

Jeśli PDBs są w ich pierwotnej lokalizacji kompilacji VS można je znaleźć, jak również wtedy, gdy jesteś w bieżącym katalogu build, ale to wydaje się być to. Czy jest jakiś sposób, aby powiedzieć Visual Studio, gdzie powinien szukać PDB? Mam niejasne wyobrażenie o tym, że serwer symboli może działać, ale wydaje się, że to dużo narzutów; Po prostu szukam czegoś takiego, jak link.exe /pdbpath c:\pdbs_are_right_here, które dodaje ścieżkę wyszukiwania, np. /I dodaje ścieżkę dołączania. Alternatywnie, czy istnieją inne ścieżki, które wyszukuje poza bieżącym katalogiem i oryginalną ścieżką bezwzględną, do której został zapisany PDB?

Odpowiedz

0

Wierzę, że ścieżka do odpowiednich pdb jest osadzona w samych bibliotekach i możesz zmienić ją na c: \ pdbs_are_right_tutaj przy przełącznikach budowania dla twoich bibliotek (zakładając, że są one rzeczywiście twoje, a nie trzecią stronę).

Dla bibliotek DLL oznacza to właściwości projektu \ linker \ debugging \ generate database database files.

Dla statycznych bibliotek domyślna nazwa jest jednolita w VS2013 („vc120.pdb”), ale myślę, że to się zmieniło w VS2015 i nie mają pojęcia o VS2003. W każdym razie, jeśli pracujesz w VS2013 \ 2012 \ 2010, musisz jawnie nadpisać nazwę.

Powiązane problemy