【问题标题】:Monodevelop fails to build, can't find Microsoft.DiaSymReader.Native.x86.dll'Monodevelop 构建失败,找不到 Microsoft.DiaSymReader.Native.x86.dll'
【发布时间】:2016-07-16 17:08:36
【问题描述】:

我正在尝试在 Mac 上使用 monodevelop 构建一个 web api 项目。问题是,经过几次打嗝(在一个结果很混乱的问题中解释,我刚刚删除了)我到了得到这个错误的地步

/Users/myuser/git/LiveData/LiveData/CSC: Error CS0041: Unexpected error writing debug information -- 'Windows PDB writer is not available -- could not find Microsoft.DiaSymReader.Native.x86.dll' (CS0041) (LiveData)

在 Windows 机器上,同样的项目使用 Visual Studio 构建,目标为 mono 4.5。

当我点击错误时,它告诉我 /Users/myuser/git/LiveData/LiveData/CSC 不存在

另一件事是,在解决方案的文件夹结构中有一个包文件夹(不是项目中的那个),在这个文件夹中我有一个名为 Microsoft.Net.Compilers 1.3.2 的文件夹,该文件夹位于另一个名为“工具”,其中包含 csc.exe 和 dll 等内容,但无法找到。

我尝试使用 nuget 直接在项目中安装 dll,但即使安装了它,构建也会显示相同的错误

谢谢,

【问题讨论】:

  • 这是什么版本的 MonoDevelop?什么是 Microsoft.DiaSymReader 程序集?
  • Xamarin Studio 5.10。关于 dll 不确定我是否得到您的问题,您的意思是版本?
  • 不,我的意思是我写的:它是什么,它来自哪里?为什么编译需要它?
  • 哦,afaik是读写pdb文件的实现
  • MonoDevelop 5.10 不使用 roslyn 而是使用 Mono 编译器,因此编译根本不应该使用 Microsoft 工具来读取 pdb 文件,不确定那里到底发生了什么

标签: monodevelop


【解决方案1】:

至于目前的解决方法,您可以将 Microsoft.Net.Compilers 的使用限制为发布配置(编辑 *.csproj 文件):

<Import Project="..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props" Condition="'$(Configuration)' == 'Release' And Exists('..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props')" />

看看条件的开始:

'$(Configuration)' == 'Release'

这样我可以在本地构建和调试并构建我的项目,即。在appharbor。

【讨论】:

    【解决方案2】:

    在发布配置中构建项目应该可以修复它!

    【讨论】:

    • 应该是评论
    • 好的,刚加入。为什么?
    【解决方案3】:

    这可能不完全相关,但在某些方面可能会有所帮助。关于 'could not find Microsoft.DiaSymReader.Native.x86.dll' 的问题,在 GitHub 上查看这个问题:https://github.com/dotnet/cli/issues/3016

    似乎解决方案是:

    • RID 图需要对 Microsoft.NETCore.Platforms 的依赖 失踪。任何对其具有传递依赖的包(如 NETStandard.Library)也可以使事情正常进行。
    • 将依赖项添加到“Microsoft.NETCore.Platforms”:“1.0.1-”或
      "NETStandard.Library":"1.5.0-" 让它工作。
    • 添加 Microsoft.NETCore.Platforms 也可以

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-28
      • 2020-11-10
      • 2015-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多