Windows マシンで Visual Studio 2015 を使用して、(Raspbian Jessie を実行している) Raspberry Pi 3 で C# .NET 4.5 WinForms アプリケーションをリモートでデバッグしようとしています。
私が理解しているように、これにはMonoRemoteDebuggerを使用できます。Visual Studio 拡張機能をインストールし、Pi でサーバー プログラムを実行しましたが、アプリケーションをデバッグしようとすると、MonoRemoteDebugger.Server.exe プログラムに pdb2mdb.exe プログラムからのエラーが表示されます。エラーは次のとおりです。
致命的なエラー: Microsoft.Cci.Pdb.PdbDebugException: 不明なカスタム メタデータ項目の種類: 6 at Microsoft.Cci.Pdb.PdbFunction.ReadCustomMetadata (Microsoft.Cci.Pdb.BitAccess ビット) [0x00000] in :0
Microsoft.Cci.Pdb.PdbFunction..ctor (System.String モジュール、ManProcSym proc、Microsoft.Cci.Pdb.BitAccess ビット) [0x00000] で:0 Microsoft.Cci.Pdb.PdbFunction.LoadManagedFunctions (System.String モジュール、Microsoft.Cci.Pdb.BitAccess ビット、UInt32 制限、Boolean readStrings) [0x00000] in :0 at Microsoft.Cci.Pdb.PdbFile.LoadFuncsFromDbiModule (Microsoft.Cci.Pdb.BitAccess ビット、Microsoft.Cci.Pdb.DbiModuleInfo 情報、Microsoft.Cci.Pdb.IntHashTable 名、System.Collections.ArrayList funcList、ブール値の readStrings、Microsoft.Cci.Pdb.MsfDirectory dir、System.Collections.Generic.Dictionary`2 nameIndex、Microsoft.Cci.Pdb.PdbReader リーダー) [ 0x00000] in :0 at Microsoft.Cci.Pdb.PdbFile.LoadFunctions (System.IO.Stream read, Microsoft.Cci.Pdb.BitAccess bits, Boolean readAllStrings) [0x00000] in :0 at Microsoft.Cci.Pdb.PdbFile.LoadFunctions (System.IO.Stream read, Boolean readAllStrings) [0x00000] in :0 at Pdb2Mdb.Driver.Convert (Mono.Cecil.AssemblyDefinition アセンブリ、System.IO.Stream pdb、Mono.CompilerServices.SymbolWriter.MonoSymbolWriter mdb) [0x00000] in :0
Piでコマンド「pdb2mdb MyProgram.exe」を実行しようとしましたが、同じエラーが発生するため、問題はpdb2mdb.exeプログラムにあるようです。掘り下げてみると、これはバージョン 0.9.6で修正された Mono.Cecil のバグであることがわかりましたが、Raspian Jessie で利用可能な最新バージョンは 0.9.5 のようです。
pdb2mdb.exe をhere のものに置き換えてみましたが、エラーは次のように変わります。
未処理の例外: System.TypeLoadException: アセンブリ 'pdb2mdb、Version=0.0.0.0、Culture=neutral、PublicKeyToken=null' から型 'Mono.Cecil.AssemblyDefinition' を読み込めませんでした。[エラー] 致命的な未処理の例外: System.TypeLoadException: アセンブリ 'pdb2mdb、バージョン = 0.0.0.0、カルチャ = ニュートラル、PublicKeyToken = null' から型 'Mono.Cecil.AssemblyDefinition' を読み込めませんでした。
Piで新しいMono.Cecilバージョンを取得しようとする解決策はありますか? もしそうなら、どうすればそれを実現でき、pdb2mdb.exe が新しいバージョンを参照していることを確認できますか?