Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Xamarin Android x86_64 build fails #2313

Closed
iXamDev opened this issue May 7, 2019 · 1 comment
Closed

Xamarin Android x86_64 build fails #2313

iXamDev opened this issue May 7, 2019 · 1 comment
Labels

Comments

@iXamDev
Copy link

iXamDev commented May 7, 2019

Description

I try to build multiple APKs Xamarin.Android project with FAKE. The output should be a separate APKs for each ABI. Everything works except AndroidAbiTarget.X86And64 configuration.

Repro steps

  1. Build Android for AndroidAbiTarget.X86And64

Expected behavior

APK builded

Actual behavior

Build fails with MSBuild error

MakeBundleNativeCodeExternal: /Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2873,3): error : Sequence contains no matching element

Script reported an error: -> BuildFailedException: Target 'Build-MultiApks' failed. StackTrace: at Fake.Core.TargetModule.raiseIfError(OptionalTargetContext context) in D:\a\1\s\src\app\Fake.Core.Target\Target.fs:line 820 at Fake.Core.TargetModule.runOrDefault(String defaultTarget) in D:\a\1\s\src\app\Fake.Core.Target\Target.fs:line 968 at <StartupCode$build_temp_9768A34E6D40DD91047B0C51436770AA3E89B56876469E188395AE0F782EA83D>.$build_temp$fsx.main@() in /Users/ivan/Projects/Emp/build/FAKE/build_temp.fsx:line 468 -> One or more errors occurred. (Exception of type 'Fake.DotNet.MSBuildException' was thrown.) -> MSBuildException: Exception of type 'Fake.DotNet.MSBuildException' was thrown. StackTrace: at Fake.DotNet.MSBuild.handleAfterRun(String command, FSharpOption1 binLogPath, Int32 exitCode, String project) in D:\a\1\s\src\app\Fake.DotNet.MSBuild\MSBuild.fs:line 756
at Fake.DotNet.MSBuild.build(FSharpFunc2 setParams, String project) in D:\a\1\s\src\app\Fake.DotNet.MSBuild\MSBuild.fs:line 849 at Fake.DotNet.Xamarin.buildPackages@258(AndroidPackageParams param, FSharpOption1 abi, FSharpOption1 manifestFile) in D:\a\1\s\src\app\Fake.DotNet.Xamarin\Xamarin.fs:line 275 at Fake.DotNet.Xamarin.buildSpecificApk@298(AndroidPackageParams param, String manifestFile, String name, FSharpFunc2 transformVersion, AndroidAbiTarget target) in D:\a\1\s\src\app\Fake.DotNet.Xamarin\Xamarin.fs:line 307
at Fake.DotNet.Xamarin.createTargetPackage@319(AndroidPackageParams param, String manifestFile, AndroidAbiTarget target, FSharpFunc2 transformVersion) in D:\a\1\s\src\app\Fake.DotNet.Xamarin\Xamarin.fs:line 320 at Fake.DotNet.Xamarin.createPackageAbiSpecificApk@331-1.GenerateNext(IEnumerable1& next) in D:\a\1\s\src\app\Fake.DotNet.Xamarin\Xamarin.fs:line 332
at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase1.MoveNextImpl() at Microsoft.FSharp.Collections.SeqModule.ToList[T](IEnumerable1 source)
at build_temp.PackageMultiAbiAndroid(String projectPath, String config) in /Users/ivan/Projects/Emp/build/FAKE/build_temp.fsx:line 278
at [email protected](TargetParameter _arg5) in /Users/ivan/Projects/Emp/build/FAKE/build_temp.fsx:line 424
at Fake.Core.TargetModule.runSimpleInternal(TargetContext context, Target target) in D:\a\1\s\src\app\Fake.Core.Target\Target.fs:line 201
`

Known workarounds

I believe that problem in https:/fsharp/FAKE/blob/master/src/app/Fake.DotNet.Xamarin/Xamarin.fs#L311
Wrong configuration name: it should be x86_64, not X86_64

You may check it here

I checked it using MSBuild directly from command line
/Library/Frameworks/Mono.framework/Versions/Current/Commands/msbuild project.csproj /t:PackageForAndroid /p:RestorePackages=False /p:AndroidSupportedAbis=X86_64 /p:OutputPath=/Users/android/ /p:Configuration=Release - fails

and
/Library/Frameworks/Mono.framework/Versions/Current/Commands/msbuild project.csproj /t:PackageForAndroid /p:RestorePackages=False /p:AndroidSupportedAbis=x86_64 /p:OutputPath=/Users/android/ /p:Configuration=Release - work as expected

Related information

  • MacOS 10.14.4
  • Version of F# Make (5.12.6)
  • Paket.Core: 5.198.0
  • MSBuild Build Engine version 16.0.42-preview+g804bde742b for Mono
@matthid
Copy link
Member

matthid commented May 11, 2019

Thanks a lot for the report and the analysis

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants