代码之家  ›  专栏  ›  技术社区  ›  chillitom Cee McSharpface

LNK1318:意外的PDB错误;确定(0)

  •  16
  • chillitom Cee McSharpface  · 技术社区  · 14 年前

    我正试图链接到用/MDd标志构建的库(libcef_wrapper_dll.lib)。我的应用程序是用/MDd和/CLR构建的,因此应该是兼容的。这个项目编译得很好,但是当链接时,我得到了一个非常无用的错误:

       Error    1   fatal error LNK1318: Unexpected PDB error; OK (0) ''    c:\Projects\Cef\CefSharp\libcef_dll_wrapper.lib 1   CefSharp
    

    我没有.LIB的.PDB文件,需要吗?

    9 回复  |  直到 14 年前
        1
  •  16
  •   chillitom Cee McSharpface    13 年前

    结果是我需要删除所有的项目临时文件,包括缓存等,杀死调试符号服务器并重新启动windows。

        2
  •  4
  •   doctorlove    13 年前

    我见过LNK1318:意外的PDB错误;链接时未知(24)。

    它发生在我同时有两个以上的大输出链接时-mspdbsrc.exe使用了越来越多的内存,点击2gig左右,然后崩溃。

        3
  •  4
  •   b4da    10 年前

    这个对我有用: Project属性-gt;C/c++ +gt;代码生成-gt;启用函数级链接-gt;是

        4
  •  3
  •   Abhijith Karkal    8 年前

    重建工程解决了这个问题

        5
  •  3
  •   Andreas buildpax    8 年前

    对我来说,最好的解决方案总是简单地杀死符号服务器。我的桌面上有一个批处理文件来执行此操作:

    @for /F "tokens=2 delims= " %%I in ('tasklist^|findstr /I "mspdbsrv.exe"') do taskkill /F /PID %%I>NUL && echo Process killed.
    
        6
  •  1
  •   DragonDU    12 年前

    我得到的构建错误如下: 链接:致命错误LNK1318:意外的PDB错误;

    有人说mspdbsrv.exe是麻烦制造者。 在清除增量生成结果并生成真正的干净生成之后,它工作得很好。

    http://connect.microsoft.com/VisualStudio/feedback/details/296978/link-fatal-error-lnk1318-unexpected-pdb-error-unknown-24

    http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/9e58b7d1-a47d-4a76-943a-4f35090616e8

        7
  •  1
  •   Sid Sarasvati    11 年前

    这是VC链接器的技术限制。 您应该尝试将代码模块进一步拆分。拆分库也有助于延长链接时间。

    查看是否可以成功构建发布模式

        8
  •  1
  •   cowlinator    6 年前

    如果使用 /MP /MDd 对于MSBuild,还可以使用 /Zf 编译器选项。(见 https://docs.microsoft.com/en-us/cpp/error-messages/tool-errors/linker-tools-error-lnk1318 )

    LNK1318的其他故障排除步骤:

    • 彻底清洁/重建
    • 重新启动mspdbsrv.exe
    • 关闭项目目录中的防病毒检查。
    • 更改 Debug Information Format /C7 None
    • 试着用 /property:_IsNativeEnvironment=true
        9
  •  0
  •   DanW    11 年前

    我遇到这个问题是因为我有一个带有/clr选项的文件,这个文件把事情搞砸了。我将特定于CLR的代码移到一个单独的文件中,进行了清理、重建,问题就解决了。