Warning	20	warning LNK4099: PDB 'vc120.pdb' was not found with 'ABC.lib(XYZ.obj)' or at 'E:\test\Release\vc120.pdb'; linking object as if no debug info

调用第三方静态库,生成一堆调试信息

解决方案:在工程属性页 配置 release 平台 活动(win32)设置:
配置属性 -> 链接器 -> 调试 -> 生成调试信息 -> 否

参考 : https://docs.microsoft.com/en-us/cpp/build/reference/debug-generate-debug-info?redirectedfrom=MSDN&view=vs-2019

Modify the Generate Full Program Database File property to enable /DEBUG:FULL for full PDB generation for every incremental build.

举例: “ warning LNK 4099: 未找到 PDB “vc120. pdb ”(使用“sqlite3d.lib(sqlite3secure.obj)”或在“D:\test\Debug\vc120. pdb ”中寻找);正在链接对象,如同没有调试信息一样”。 使用VC时链接了第三方静态库, 并且第三方静态库(一般是开源的三方库)是在一个solution下的多个project, 当然, 网上基本都是这么回答的, 其实本质原因是因为这些开源库一般都会通过各种方式修改solution和project的默认路径把二进. 0x00 现象及原因 举例: warning LNK 4099: PDB ' wxbase30ud. pdb' was not found with ' wxbase30ud.lib(any.obj) ' 使用VC时链接了三方静态库, 并且三方静态库(一般是开源的三方库)是在一个solution下的多个project, 当然, 网上基本都是这么回答的, 其实本质原因是因为这些开源库一般都会通过各种方式修 举例: “ warning LNK 4099: 未找到 PDB “vc120. pdb ”(使用“sqlite3d.lib(sqlite3secure.obj)”或在“D:\test\Debug\vc120. pdb ”中寻找);正在链接对象,如同没有调试信息一样”。 使用VC时链接了第三方静态库, 并且第三方静态库(一般是开源的三方库)是在一个solution下的多个project, 当然, 网上基本都是这么 解决办法: 方法1:禁用警告4099,或禁用调试信息(在属性->链接器->调试->生成调试信息) 方法2:保留 pdb 文件(在属性->C/C++->输出文件->程序数据库文件名->$( 解决办法: 方法1:禁用警告4099,或禁用调试信息(在属性->链接器->调试->生成调试信息) 方法2:保留 pdb 文件(在属性->C/C++->输出文件->程序数据库文件名->$(OutDir)$(TargetName). pdb ,生成的 pdb 文件将同库在同一目录) 解决建议: 建议采用方法2,debug主要就 一、在 VS 2008工程中,经常出现 warning LNK 4099: 未找到 PDB “vc90. pdb 等问题,解决办法如下: 1. 在项目属性—C/C++—输出文件—程序数据库文件名后面填写$(IntDir)\vc80. pdb 。 2. 在项目属性—连接器—调试—生成调试信息后面改成“否”。