Bug 60179 - The APK includes x86_64 when targeting x86
Summary: The APK includes x86_64 when targeting x86
Status: RESOLVED FIXED
Alias: None
Product: Android
Classification: Xamarin
Component: Linker ()
Version: unspecified
Hardware: PC Windows
: --- normal
Target Milestone: 15.5
Assignee: Radek Doulik
URL:
Depends on:
Blocks:
 
Reported: 2017-10-13 14:41 UTC by Matthew Leibowitz
Modified: 2017-10-13 16:31 UTC (History)
3 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:


Attachments
Sample (8.38 KB, application/x-zip-compressed)
2017-10-13 14:41 UTC, Matthew Leibowitz
Details


Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:
Status:
RESOLVED FIXED

Description Matthew Leibowitz 2017-10-13 14:41:06 UTC
Created attachment 25303 [details]
Sample

When targeting just x86 and including a library that has both x86 and x86_64 native files, the package still contains the x86_64 native files.

If I do "x86;armv7", then we get "x86_64" as well for some reason. But if I just do "armv7", then I just get "armv7". If I do just "x86", then I get both "x86" and "x86_64".And, if I do just "x86_64", then I just get "x86_64".

It appears to be an issue when selecting "x86", it adds the "x86_64" bits for some reason. The issue manifests on a "x86_64" device because the libmonodroid and libmonosgen native files are not included - just the native files from the package.

I have my full build log here: https://gist.github.com/mattleibow/0dabf919b0fcc063f464f614f407b2a1
I have my VS version here: https://gist.github.com/mattleibow/2747edf7ca1232ef4410df470bfa208b

I think this is the same issue: https://bugzilla.xamarin.com/show_bug.cgi?id=47607
Comment 1 Jonathan Pryor 2017-10-13 14:49:54 UTC
I believe that this was fixed in:

https://github.com/xamarin/xamarin-android/pull/796
https://github.com/xamarin/xamarin-android/commit/6ed9bd79952efe39203d37aecd8156aa3151fb3e

The fix should be in the d15-5 branch and released as part of Xamarin.Android 8.1.