剥去pdb的路径

时间:2011-09-29 11:25:50

标签: visual-studio

默认情况下,在发布模式下编译Visual Studio项目时,pdb的完整路径将放入图像文件中,例如:

c:\myprojects\demo\release\test.pdb

使用未记录的链接器开关(/pdbpath:none)可以强制Visual Studio 2008减少pdb的完全限定名称,例如:

test.pdb

我需要对仍使用 VC6 构建的项目执行相同的操作。

我在项目设置级别尝试了“/pdbpath:none”开关,但链接器抱怨这个未知的开关。

有人知道在连接VC6项目时或之后直接在图像级别完成此操作的方法(或工具)吗?

2 个答案:

答案 0 :(得分:2)

您最好的选择是直接使用MS的pdbstr.exe。它允许直接提取,更新和misc其他功能,独立于编译器版本(直到最后支持的版本,我认为现在是VS2013)。我们使用它将SVN链接直接添加到PDB,然后我们使用srctool将其存储在本地符号存储中。

答案 1 :(得分:1)

对于较新的link.exe版本,语法已更改。

您想要的选项现在是/pdbaltpath:%_PDB%

MSDN上记录了这些内容:https://msdn.microsoft.com/en-us/library/dd998269.aspx

  

%_PDB% 扩展为实际的.pdb文件的文件名,没有任何路径信息

对于VC6,您可能希望继续使用相同的编译器,但需要使用link.exe的新版本。

Windows驱动程序工具包还附带了一个名为binplace.exe的工具,可以在构建后修改此信息。