Visual studio cannot find nafxcwd.pdb
Visual studio cannot find nafxcwd.pdb
我在一个混合的FortranC++编程环境中工作。C++项目是一个静态库(XMLParser.lib
),用于读取和写入XML文件。它被添加为Fortran项目的附加依赖项,Fortran项目是一个用于执行数学计算的DLL库(engine.dll
)。Fortran使用CRT(LIBCMTD
),C++使用MFC库。如中所述,如果未按正确顺序链接LIBCMTD
和NAFXCWD
库,这可能会导致链接器错误。为了避免这个问题,我不得不添加nafxcwd.lib
作为C++项目的附加依赖项。
一切正常,解决方案编译成功。然而,在链接这些项目时,编译器抱怨在$(OUTDIR)
文件夹(创建C++静态库的输出文件夹)中找不到nafxcwd.pdb
文件。为了解决这个问题,我不得不将nafxcwd.pdb
从Visual Studio文件夹复制到我的输出文件夹中,这不是一个实用的选择,因为这个非常具体的指令应该与我的团队中的每个其他程序员共享。我尝试过与创建pdb文件相关的不同选项(即/Zi、/Z7和Zi),但似乎都不起作用。
2>XMLParser.lib(dumpcont.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(dumpflt.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(arccore.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(arcobj.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(arcex.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(arcstrm.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(dumpinit.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(dumpout.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(afxasert.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(afxmem.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(filecore.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(filetxt.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(filex.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(filest.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
2>XMLParser.lib(array_b.obj) : warning LNK4099: PDB 'nafxcwd.pdb' was not found with 'd:DebugXMLParser.lib' or at 'D:Debugnafxcwd.pdb'; linking object as if no debug info
如果你能帮我解决以下问题,我将不胜感激:
- 为什么visual studio在输出文件夹中查找
nafxcwd.pdb
而不是VS文件夹 - 有没有任何方法可以将
nafxcwd.pdb
嵌入到XMLParser.obj
文件中,以确保链接器总是能找到它
感谢您的帮助。
我找到了这个问题的答案。在Fortran项目中,我将nafxcwd.lib libcmtd.lib
添加到其他项目依赖项中,并添加了相同的库以忽略列表。
相关文章:
- C++atioglxx.pdb未加载错误glBufferData OpenGL
- 加载"D:UsersPublicDocumentsopencvbuildx64vc14binopencv_world340d.dll",找不到或打开PDB文件
- OpenCV 3 Visual Studio 2017 调试,调用堆栈没有.pdb文件
- 删除编译器优化并在发布中启用 pdb 文件
- pdb 不匹配或未找到 - 在窗口中调试
- 在Visual Studio中加载wxWidget pdb库
- 在不中断引用的情况下移动静态库的 *.pdb 文件 - LNK4099
- C++ 未从同一目录加载的 PDB 符号
- PDB 与.exe不匹配
- 使用“ .reload”迫使windbg加载PDB
- 如何修复Visual Studio 2017中的"Cannot find or open the PDB file."
- Delete[] 运算符使 *.exe 触发断点和 wntdll.pdb未加载以显示
- 将PCH,PDB和Zi组合在一起会导致VS2017的C2859编译错误令人费解
- C++ ATIOGLXX.pdb 包含查找模块 ATIOGLXX.dll 源代码所需的调试信息
- 从远程服务器请求PDB文件
- 截至2017年,Clang 5.0 PDB支持
- nvoglv32.dll 找不到或打开 PDB 文件
- 是否可以使用IDiaDataSource::LoadDataFromPdb从符号存储中读取pdb
- 如何将信息插入 pdb 文件
- Visual studio cannot find nafxcwd.pdb