web-dev-qa-db-ja.com

CSC:エラーCS0041:デバッグ情報の書き込み中に予期しないエラー-「このプラットフォームでは操作がサポートされていません。」

Visual Studio Professional for Macをダウンロードしたばかりで、いつも同じエラーが発生するため、何もビルドできないようです。

/Library/Frameworks/Mono.framework/Versions/4.8.0/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) ->

CSC: error CS0041: Unexpected error writing debug information -- 'Operation is not supported on this platform.'

 19 Warning(s)
 1 Error(s)

コンパイルするためにプロジェクトで何を変更すればよいかわからない。

13
Slee

私はこの問題を2つの方法で回避することができました。

  1. [〜#〜] hack [〜#〜]ビルドからデバッグシンボルを削除する(VSウィンドウの場合:[プロジェクトプロパティ]-> [ビルド]タブ-> [詳細]ボタン-> [デバッグ情報]ドロップダウンを " none "-VS for Mac/Xamarin Studioで同等のものは不明)影響を受けるプロジェクトのすべての構成でこれを行いました。 macOS envに戻され、ビルドが成功するようになりました。もちろんデバッグ情報はありませんが、depを壊すことなく機能します。

  2. NON-HACK根本的な原因はASP.NET WebプロジェクトのRoslynコンパイラ/ツールの使用であり、このツールはMDBファイルの代わりにPDBファイルを生成し、macOSプラットフォームでPDBファイルを生成しようとすると失敗します(「プラットフォームはサポートされていません」に移動します。)根本的な原因がわかっているため、影響を受けるプロジェクトから次のnugetパッケージを削除することもできます。

    <package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.0" targetFramework="net45" />
    <package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net45" developmentDependency="true" />
    

これら2つのパッケージを削除することで何が犠牲になるのかは不明です。これにより、影響を受けるプロジェクトをデバッグ情報を含めてビルドできます。影響を受けるプロジェクトにはwebapiエンドポイントのみが含まれ、MVCやRazorエンジンは使用されませんでした。この変更の上流で問題が発生した場合、他の人の経験を聞いていただければ幸いです。

HTH

15
Shaun Wilson

これはまもなく修正されるバグです。その間、あなたはcsprojファイルを編集して追加することができます

<DebugType Condition="'$(OS)' != 'Windows_NT'">portable</DebugType>

<DebugType>full</DebugType>または<DebugType>pdbonly</DebugType>を含む行の後

基本的に、MacのDebugTypeプロパティはportableにする必要があります。これは、pdbではなく、Roslynの非Windowsプラットフォームのcsc.exeでサポートされています。

5
radical

この問題を解決するには、次のことを行う必要があります。

  1. プロジェクトを選択

  2. 右クリックしてオプションを選択

  3. [ビルド]-> [コンパイラ]タブを選択します
  4. デバッグ情報->なし

このエラーは解決しましたが、別のエラーが発生しました

"System.IO.FileNotFoundExceptionファイルが見つかりませんでした" /Users/.../.../bin\roslyn\csc.exe "

3
Icet

行を削除した後

<DebugType>pdbonly</DebugType>

から .csprojファイル、ビルドが成功しました。

0
Darius

遅くなりすぎないように、問題を解決するために次のことを行いました。

  1. ソリューションを右クリックして[オプション]を選択し、

  2. [ビルド]-> [構成]タブを選択します。

  3. 「構成A」 [デバッグ]を選択し、すべてのビルドマークを無効にして、[同意する]をクリックします。

  4. プロジェクトをクリーン、再構築、実行します。

これがお役に立てば幸いです。

0
Alan Uscanga