当我尝试构建我的 Xamarin iOS 项目时,出现此错误:
/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets(5,5): Error MSB6006: "csc.exe" exited with code 1. (MSB6006)
似乎是因为 Mono 5.0,但我不知道如何修复它!
最佳答案
Roslyn 中实际上存在一个与编译包含 async partial
的项目相关的上游错误。导致这种情况的方法。
公共(public)漏洞 56246在 Xamarin 错误跟踪器上已归档以跟踪将上游“csc.exe”修复包含在 Mono 5.0 中。
Mono 5.0 和 Mono 4.8.1 都包含 mcs(Mono 的编译器)和 csc,但是,Mono 4.8.1 默认使用 mcs,而 5.0 默认使用 csc。
在等待修复到 Xamarin 环境时,有一个临时解决方法可以让您启动并运行。你可以temporarily switch back to using mcs and xbuild in Mono 5.0 :
添加以下
PropertyGroup
元素添加到您的应用程序项目的 .csproj 文件底部,就在结束前</Project>
标签:<PropertyGroup Condition=" '$(OS)' == 'Unix' "> <CscToolExe>mcs.exe</CscToolExe> </PropertyGroup>
禁用
Visual Studio > Preferences > Build > Build with MSBuild instead of xbuild
.关闭,然后重新打开解决方案并仔细检查新设置。
清理并重建。
关于ios - 以前工作的 Xamarin iOS 项目无法构建并出现 MSB6006 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44353837/