myget (ci の一部) にライブラリを作成し、シンボル ソースを symbolsource.org にプッシュしようとしています (これは素晴らしいサービスであり、このアイデアが気に入っています)。これは私の最初の試みです。myget サイト ( http://docs.myget.org/docs/reference/symbolsource ) にある手順を使用していますが、いくつかのギャップがあります。
これが私がたどる手順です。まず、nuspec ファイルを作成し、「nuget pack -symbol xxx」を使用して X.symbols.nupkg および X.nupkg ファイルを作成します。これはうまくいきます。次に、それらを myget と symbolsource に個別にプッシュします。nuget pkg エクスプローラーを使用して内容を調べたところ、予想どおりに表示されました (src、pdb、および dll がシンボルに表示されます)。プッシュを行った後、symbolsource にログインすると、myget ページにある手順を使用して自分のパッケージがそこに表示されます。
次のコマンドを使用して、symbolsource にプッシュしました。
nuget push X.symbols.nupkg $ApiKey -Source http://nuget.gw.SymbolSource.org/MyGet/rootdotnet/
次に、指示に従って Visual Studio を構成します。「コードのみを有効にする」をオフにし、シンボル サーバーをオンにします。次に、シンボル サーバーのリストに次の URL を追加します。
http://srv.SymbolSource.org/pdb/MyGet/gwatts/XXXXX
XXXX は GUID であり、sumbolsource の "Your Account"/"Authentication" "Visual Studio" テーブル エントリを読み取りました (myget は、これが私がすべきことであることがまったく明確ではありませんでした)。
次に、デバッグを試みます。そのライブラリで何かをヒットすると、VS2012 で "No Symbols Loaded" ページが表示されます。詳細の下に、VS2012 が pdb ファイルを見つけようとする試みのダンプがあります。次のように表示されます。
C:\Users\Gordon\Documents\Code\HVQCDCorrelationStudy\CalcSimpleCorrelationTestNumbers\bin\x86\Debug\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
c:\TeamCity\buildAgent\work\44463130cd7383cb\LINQToTTree\LINQToTTreeLib\obj\x86\Release\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
C:\WINDOWS\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
C:\WINDOWS\symbols\dll\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
C:\WINDOWS\dll\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
C:\Users\Gordon\AppData\Local\Temp\SymbolCache\LINQToTTreeLib.pdb\9c883e0fa93245c99efd2b92dbfc6dfc1\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
C:\Users\Gordon\AppData\Local\Temp\SymbolCache\MicrosoftPublicSymbols\LINQToTTreeLib.pdb\9c883e0fa93245c99efd2b92dbfc6dfc1\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
C:\Users\Gordon\Documents\Code\HVQCDCorrelationStudy\LINQToTTreeLib.pdb: Cannot find or open the PDB file.
SYMSRV: C:\Users\Gordon\AppData\Local\Temp\SymbolCache\LINQToTTreeLib.pdb\9C883E0FA93245C99EFD2B92DBFC6DFC1\LINQToTTreeLib.pdb not found
SYMSRV: http://srv.SymbolSource.org/pdb/MyGet/gwatts/XXXXX/LINQToTTreeLib.pdb/9C883E0FA93245C99EFD2B92DBFC6DFC1/LINQToTTreeLib.pdb not found
http://srv.SymbolSource.org/pdb/MyGet/gwatts/XXXXX: Symbols not found on symbol server.
SYMSRV: C:\Users\Gordon\AppData\Local\Temp\SymbolCache\LINQToTTreeLib.pdb\9C883E0FA93245C99EFD2B92DBFC6DFC1\LINQToTTreeLib.pdb not found
SYMSRV: http://msdl.microsoft.com/download/symbols/LINQToTTreeLib.pdb/9C883E0FA93245C99EFD2B92DBFC6DFC1/LINQToTTreeLib.pdb not found
http://msdl.microsoft.com/download/symbols: Symbols not found on symbol server.
つまり、symbolsource.org に正しく接続しているように見えます。しかし、そこで何かが失敗しています。9C883E0FA93245C99EFD2B92DBFC6DFC1 は明らかにハッシュです。そのライブラリにどのハッシュ シンボルソースが割り当てられているかわかりません (??)。
基本的。この時点でデバッグを続行する方法がわかりません。どんな助けでも大歓迎です!
更新:以下の回答で述べたように、テストできる小さなものを構築してください。私はそれをしました、そしてそれはうまくいきます。そうするうちに、SymbolSource.org にいくつかのデバッグ ツールがあることを発見しました。具体的には、フィード内のパッケージを見ると、「コンパイル」リンクを見つけることができます。クリックして。アップロードした各ビルド タイプの行が表示されます。私のパッケージにはそれに関連するものは何もないので、シンボル生成のために何らかの方法で nuspec ファイルを台無しにしてしまいました。