以前工作的 Xamarin iOS 项目无法构建并出现 MSB6006 错误
Previously working Xamarin iOS project doesn't build and gives MSB6006 Error
当我尝试构建我的 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的问题,不知道怎么解决!
尝试下载并安装 Mono 4.8。如果您将 VS 用于需要 Mono 5.0 或更高版本的 Mac,则需要小心。如果是这种情况,您应该能够下载 4.8 而无需将其设为默认值,然后在启动 VS 后将首选项中的 .NET 运行时更改为 4.8。
Roslyn 中实际上存在一个与编译项目相关的上游错误,该错误包含导致此问题的 async partial
方法。
Public Xamarin 错误跟踪器上的错误 56246 已被归档以跟踪上游 "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
.
关闭,然后重新打开解决方案并仔细检查新设置。
清理并重建。
当我尝试构建我的 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的问题,不知道怎么解决!
尝试下载并安装 Mono 4.8。如果您将 VS 用于需要 Mono 5.0 或更高版本的 Mac,则需要小心。如果是这种情况,您应该能够下载 4.8 而无需将其设为默认值,然后在启动 VS 后将首选项中的 .NET 运行时更改为 4.8。
Roslyn 中实际上存在一个与编译项目相关的上游错误,该错误包含导致此问题的 async partial
方法。
Public Xamarin 错误跟踪器上的错误 56246 已被归档以跟踪上游 "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
.关闭,然后重新打开解决方案并仔细检查新设置。
清理并重建。