web-dev-qa-db-ja.com

LNK1318:予期しないPDBエラー。 OK(0)

/ 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ファイルがありません。必要ですか?

17
chillitom

プロジェクトの一時ファイルをすべて削除する必要があることが判明しました。キャッシュなど、デバッグシンボルサーバーを強制終了し、ウィンドウを再起動します。

16
chillitom

これは私のために働いた:プロジェクトのプロパティ-> C/C++->コード生成->関数レベルリンクを有効にする->はい

4
mk_

LNK1318:予期しないPDBエラーを見ました。リンク時の不明(24)。

大きな出力のリンクが2つ以上同時に発生した場合に発生しました。mspdbsrc.exeはますます多くのメモリを使用し、2ギガ程度をヒットしてからクラッシュしました。

4
doctorlove

プロジェクトを再構築することで問題は解決しました

3
Abhijith Karkal

私にとって最善の解決策は、常にシンボルサーバーを単に強制終了することでした。これを行うためのバッチファイルがデスクトップにあります。

@for /F "tokens=2 delims= " %%I in ('tasklist^|findstr /I "mspdbsrv.exe"') do taskkill /F /PID %%I>NUL && echo Process killed.
3
Andreas

次のようなビルドエラーも発生しました。LINK:致命的なエラーLNK1318:予期しないPDBエラー。

これについて話されているいくつかのURLがありますが、完全な解決策は見られません。 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

1
DragonDU

MSBuildで/MPまたは/MDdを使用する場合は、/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でビルドしてみてください
1
cowlinator

これは、VCリンカーの技術的な制限です。コードモジュールをさらに分割してみてください。ライブラリを分割すると、リンク時間が非常に長くなります。

リリースモードで正常にビルドできるかどうかを確認します

1
Sid Sarasvati

/ clrオプションを含むファイルがあり、問題が発生したため、問題が発生しました。 CLR固有のコードを別のファイルに移動し、クリーンアップして再構築したところ、問題は解決しました。

0
DanW