Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
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
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.
Run->Start profiling is available, and apps gets built and deployed to simulator/device, profiler is started, but then the profiler UI never gets any data from the app, as the runtime libs are not included:
05-03 16:44:23.545 W/monodroid( 1237): Trying to load profiler: /data/data/com.xamarin.XamStore/files/.__override__/libmono-profiler-log.so: dlopen=0x0 error=No such file or directory
05-03 16:44:23.545 W/monodroid( 1237): Trying to load profiler: /data/app/com.xamarin.XamStore-1/lib/x86/libmono-profiler-log.so: dlopen=0x0 error=No such file or directory
05-03 16:44:23.545 W/monodroid( 1237): looking for embedded profiler within '/data/app/com.xamarin.XamStore-1/lib/x86/libmonodroid.so': dlopen=0xaf14834c error=<none>
05-03 16:44:23.545 W/monodroid( 1237): Looking for profiler init symbol 'mono_profiler_startup_log'? 0x0
05-03 16:44:23.545 W/monodroid( 1237): Trying to load profiler: /data/app/Mono.Android.DebugRuntime-1/lib/x86/libmono-profiler-log.so: dlopen=0x0 error=No such file or directory
05-03 16:44:23.545 W/monodroid( 1237): The 'log' profiler wasn't found in the main executable nor could it be loaded from 'libmono-profiler-log.so'.
Xamarin.Android itself seems to do the correct thing, so it looks like a bug in XS, which is building the app without profiling support when it should.
=== Xamarin Studio Business ===
Version 6.1 (build 817)
Installation UUID: 0a9ae72a-48a9-4853-ab6a-fe231f5fca0b
Mono 4.4.0 (mono-4.4.0-branch/fcf7a6d) (64-bit)
GTK+ 2.24.23 (Raleigh theme)
Package version: 404000148
=== NuGet ===
=== Xamarin.Profiler ===
Location: /Users/rodrigo/Projects/xamarin/profiler/src/XamarinProfiler.Mac/bin/Debug/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler
=== Xamarin.Android ===
Version: 22.214.171.124 (Xamarin Business)
Android SDK: /Users/rodrigo/Library/Developer/Xamarin/android-sdk-mac_x86
Supported Android versions:
5.0 (API level 21)
5.1 (API level 22)
6.0 (API level 23)
6.0.99 (API level 24)
SDK Tools Version: 25.1.3
SDK Platform Tools Version: 23.1
SDK Build Tools Version: 23.0.3
Java SDK: /usr
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)
Android Designer EPL code available here:
=== Xamarin Android Player ===
Location: /Applications/Xamarin Android Player.app
=== Apple Developer Tools ===
Xcode 7.3 (10183.3)
=== Xamarin.Mac ===
Version: 126.96.36.1999 (Xamarin Business)
=== Xamarin.iOS ===
Version: 188.8.131.529 (Xamarin Business)
Build date: 2016-04-24 15:13:41-0400
=== Build Information ===
Release ID: 601000817
Git revision: 2335763551f9db8296b08542035977b899b7f3b7
Build date: 2016-04-25 10:45:36-04
Xamarin addins: 7f8c9ab2a981143a87fbd5adbde3f5890a838fde
Build lane: monodevelop-lion-cycle8-preview
=== Operating System ===
Mac OS X 10.11.4
Darwin cogulla.local 15.4.0 Darwin Kernel Version 15.4.0
Fri Feb 26 22:08:05 PST 2016
Diagnostic build output is at:
.apk contents are at:
Cursory glance suggests that the `$(AndroidEmbedProfilers)` MSBuild property is not set, so when BuildApk.AddProfilers() executes, it doesn't do anything, so the profiler libs aren't added to the .apk.
Does this only affect Master/C8 6.1.99? Or is this behavior also reproducible in the current C7 Beta 6.1.0.x?
I've only seen it in latest alpha channel packages, so C7?
@Moya: Current alpha channel is "C8 preview." *Beta* channel is C7.
As of 2016-April-27, anyway.
Prior to that point, the alpha channel had C7.
The inclusion of the profiler will depends on a few factors
1) The value of $(AndroidEmbedProfilers)
2) If it is a debug build
A debug build in this case is if $(AndroidIncludeDebugSymbols) is true. That gets set to true if
a) $(DebugSymbols) = true
b) $(DebugType) = 'Full' or ''
now if it is a debug build and $(AndroidEmbedProfilers) is empty it will default to 'log'.
So if you are trying to profile a Release build you will need to set $(DebugSymbols) and $(DebugType) to the appropriate values or set $(AndroidEmbedProfilers).
I am not sure of the profiler requires some of the debug info or not. I am also not 100% sure if this is how we want it to work. Do we want to be able to profile full release apps?
Right now we only support profiling debug builds
*** Bug 41810 has been marked as a duplicate of this bug. ***
Is this still an issue? With a local monodroid/5455dd5e build (2016-June-30), samples/Hello contains libmono-profiler-log.so:
> $ unzip -l samples/Hello/bin/Debug/*-Signed.apk | grep libmono-pro
> 655252 06-30-16 20:27 lib/x86/libmono-profiler-log.so
> 734196 06-30-16 20:27 lib/armeabi/libmono-profiler-log.so
> 705676 06-30-16 20:27 lib/armeabi-v7a/libmono-profiler-log.so
Additionally it is installed on-device:
> $ adb shell ls -l /data/app/Mono.Samples.HelloTests-1/lib/arm | grep profi
> -rwxr-xr-x system system 705676 1979-12-31 20:27 libmono-profiler-log.so
The profiler *should* work now. Is this still a problem?
The profiler still doesn't work on master/C8 builds, but with master builds (xamarin.android-6.1.99-375.pkg) the runtime profiler is included in the APK, so this one is fixed now
Unable to verify this issue due to bug https://bugzilla.xamarin.com/show_bug.cgi?id=42500
I am also checked this issue latest master build:xamarin.android-6.1.99-415
and observed that this issue is working fine.