2010-11-30 123 views
2

我有一個使用第三方庫(Open Scene Graph)的VS 2008 C++項目。將Visual Studio 2008指向第三方DLL的源代碼進行調試

當我開始調試項目時,每次調用該外部庫中的函數時,調試器都會跳過它,因爲(顯然)調試器沒有.cpp文件查找代碼的位置。它只跳轉到鏈接到我的項目的頭文件,因爲這些文件存在並且它們的位置是已知的。所以,我只能看到這些小型內聯函數中發生了什麼,但不是在實現處於.cpp文件中的更大函數中,而我沒有。

我需要的是以某種方式步驟通過這些第三方dll/libs的源代碼,就像我自己的代碼一樣。

我下載了該庫的整個源代碼並將其編譯到我的機器上。現在我有了dll和libs,.pdb文件和.cpp文件。但是,我如何告訴Visual Studio第三方庫的.cpp文件的位置,以便它知道,當我想要進入來自.dll或.lib的函數時,它會打開相應的文件。 cpp文件(即使它不在我的項目中,並且位於完全不同的文件夾中)?

這是可能的嗎?

我試圖將.libs,.dlls(調試版本),.pdbs複製到我的項目使用和「附加庫目錄」以及項目文件夾的位置,但這一定不夠。

回答

2

將具有PDB文件的目錄添加到工具 - >選項 - >調試 - >符號。

+0

檢查http://www.symbolsource.org/是說我還需要指定源代碼的位置。對於Microsoft產品,使用了專門用於.pdb和.cpp文件的服務器,但我工作的庫(Open Scene Graph)當然不是Microsoft的,所以它不在服務器上! – Igor 2010-12-01 09:34:41