Nie mogę znaleźć lub otworzyć pliku PDB w C ++
W Visual C ++ i innych językach Microsoft plik bazy danych programu, przechowywany z rozszerzeniem .pdb, przechowuje informacje używane przez linker i debugger. W zależności od opcji kompilatora i linkera może istnieć kilka plików .pdb, z których każdy jest używany w różnych momentach podczas budowania i debugowania projektu. Jeśli te pliki w tajemniczy sposób znikną, istnieje kilka sposobów ich odtworzenia.
tło
Języki Visual Studio firmy Microsoft tworzą pliki .pdb jako część procesów kompilowania i łączenia. Pliki te zawierają wskaźniki do referencji i symboli, pozwalając linkerowi i debuggerowi znaleźć kod i zmienne w obiekcie i plikach wykonywalnych. W Visual C ++, co najmniej dwa pliki .pdb są tworzone podczas procesu kompilacji. Plik vc100.pdb w Visual Studio 2010 zostaje zbudowany podczas fazy kompilacji i zawiera wskaźniki do różnych plików obiektów. Drugi plik, projectName.pdb, (gdzie nazwa projektu jest nazwą projektu lub pliku wykonywalnego) zawiera wskaźniki i odniesienia do pliku wykonywalnego. Pliki te można znaleźć w folderze "Debugowanie" w katalogu projektu.
Oczyść i odbuduj
Najczęstszym sposobem utracenia plików pdb jest sytuacja, gdy elementy menu "Project", a następnie "Clean" zostaną kliknięte w Visual Studio IDE. Czysta operacja usuwa cały obiekt, linker i pliki wykonywalne, w tym pliki pdb. Aby odtworzyć pliki, po prostu kliknij "Projekt" i wybierz "Odbuduj wszystko".
Sprawdź opcje projektu
Jeśli funkcja czyszczenia i odbudowywania nie działa, mogą występować opcje projektu, które zostały zmienione po drodze lub projekt mógł zostać uszkodzony. Najczęstszym z nich jest zmiana konfiguracji projektu z Debuguj na Release. Aby powrócić do debugowania, kliknij "Projekt", wybierz "Menedżer konfiguracji" i wybierz "Debugowanie." Jeśli opcja menedżera konfiguracji nie pojawi się w menu budowy, kliknij "Narzędzia" i wybierz "Opcje". Gdy pojawi się strona Opcje, wybierz "Projekty i rozwiązania" z widoku drzewa i kliknij pole wyboru "Pokaż zaawansowane opcje konfiguracji". Menedżer konfiguracji powinien pojawić się w menu kompilacji.
Odtwórz projekt
Jeśli pliki nadal się nie pojawiają, być może nadszedł czas na ponowne utworzenie projektu. Zamknij program Visual Studio, zmień nazwę folderu projektu i ponownie otwórz program Visual Studio. Kliknij "Plik", wybierz "Nowy projekt" i skonfiguruj nowy projekt Visual C ++, używając tej samej nazwy i typu projektu, jak wcześniej. Zbuduj nowy pusty projekt, aby utworzyć podstawową strukturę programu i pliki, i skopiuj pliki .cpp, .h, .res i inne z oryginalnego projektu. Nie zastępuj żadnych plików w nowym folderze projektu.
Wróć do Visual Studio i kliknij "Project", wybierz "Dodaj istniejące pliki" i wybierz wszystkie pliki skopiowane do projektu ze starego folderu. Zbuduj i przetestuj program, aby upewnić się, że wszystkie niezbędne pliki zostały skopiowane. Ponownie przełącz konfigurację na "debugowanie" i uruchom projekt. Pliki .pdb powinny znajdować się w folderze debugowania.