默认情况下,在发布模式下编译Visual Studio项目时,pdb的完整路径将放入图像文件中,例如:
c:\myprojects\demo\release\test.pdb
使用未记录的链接器开关(/pdbpath:none
)可以强制Visual Studio 2008减少pdb的完全限定名称,例如:
test.pdb
我需要对仍使用 VC6 构建的项目执行相同的操作。
我在项目设置级别尝试了“/pdbpath:none
”开关,但链接器抱怨这个未知的开关。
有人知道在连接VC6项目时或之后直接在图像级别完成此操作的方法(或工具)吗?
答案 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
的工具,可以在构建后修改此信息。