2010-11-23 124 views
14

私は/ MDdフラグでビルドされたライブラリ(libcef_wrapper_dll.lib)とリンクしようとしています。私のアプリケーションは/ MDdと/ CLRでビルドされているので互換性があるはずです。このプロジェクトはうまくコンパイルが、私は以下の非常に助けにならないエラーを取得リンクする際:私は.LIBための.PDBファイルを持っていないLNK1318:予期しないPDBエラー。 OK(0)

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

を、私は1つが必要なのですか?

+0

いくつかのヒント:私はこれを行うには、私のデスクトップ上のバッチファイルを持っていますhttp://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/9e58b7d1-a47d- 4a76-943a-4f35090616e8 –

答えて

14

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

4

私はLNK1318を見た:予期しないPDBエラー。リンク時のUNKNOWN(24)。

大きな出力のリンクが2つ以上あると、mspdbsrc.exeがますますメモリを使用して2ギガバイトを超えてクラッシュしてしまいました。

1

次のようにビルドエラーが発生しました。 リンク:致命的なエラーLNK1318:予期しないPDBエラーです。

これについて話されているsevera 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

0

私は物事をめちゃくちゃにされた/ CLRオプションでファイルを持っていたので、私は問題を抱えていました。私は、CLR固有のコードを別のファイルに移動して、きれいにし、再構築し、問題はなくなりました。

1

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

あなたが成功したこの1つは私のために働いリリースモードに

1

を構築することができます参照してください: プロジェクトのプロパティ - > C/C++を - >コード生成 - >関数レベルのリンクを有効にする - >再構築はい

2

プロジェクトで問題を解決しました

3

私にとって最良の解決策は、常にシンボルサーバーを単に停止させることでした。このスレッドに

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

これは私がやっただけのことです。 Process Explorerを使用してmspdbsrv.exeを終了し、失敗したプロジェクトを再リンクします。 –

関連する問題