Bug 49642 - Please support Portable PDB on XA
Summary: Please support Portable PDB on XA
Status: RESOLVED FIXED
Alias: None
Product: Android
Classification: Xamarin
Component: Mono runtime / AOT Compiler (show other bugs)
Version: unspecified
Hardware: PC Linux
: Normal normal
Target Milestone: master
Assignee: dean.ellis
URL:
Depends on:
Blocks:
 
Reported: 2016-12-11 20:14 UTC by Dylan Borg
Modified: 2018-03-21 09:44 UTC (History)
4 users (show)

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

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 Dylan Borg 2016-12-11 20:14:53 UTC
I have been using portable PDB files output by my custom compiler on desktop mono for a long while now. While I can deploy apps made by teh same compiler which run ok on the device, I cannot debug them when using portable pdb even if I hack the build system to actually include the pdb file in the apk. I end up with VSCode connected the debugger agent on teh device but no breakpionts get triggered like what used to happen with mdb files in the past. Noticing that mono in general is moving to CSC from MCS which does not make mdb files, I suggest enabled the portable pdb support in t
he embedded mono runtime also when running on mobile. I also suggest to make these build system hacks unneeded by copying the pdb files to the apk as an out of teh box behaviour.
Comment 1 Dylan Borg 2017-01-07 11:09:40 UTC
I also noticed that the cecil tools used to convert pdb to mdb, now support PPDB as well.
Comment 2 Luke McNally 2018-01-03 16:15:58 UTC
Is there anything happening with this bug? Or do we have to generate mdb files? I submitted a related question here:

https://developercommunity.visualstudio.com/content/problem/157012/mono-debug-files-dllmdb-not-generated.html

In that post I'm asking about mdb generation, but the answers suggest that debugging with portable pdbs should work. I'm finding it doesn't, as Dylan Borg has outlined above.

Support for portable pdbs would simplify things a lot. Please could you provide an ETA on this? Or let us know if we have to generate mdbs.
Comment 3 Jonathan Pryor 2018-01-03 16:49:39 UTC
I believe that Xamarin.Android 7.3 introduced support for Portable PDB files:

https://developer.xamarin.com/releases/android/xamarin.android_7/xamarin.android_7.3/#Integrated_Mono_FeaturesFixes

> Among the many highlights in Mono 5.0 is support for Portable .pdb files.
Comment 4 Luke McNally 2018-01-03 17:11:00 UTC
Thanks for the quick response. Our app is targeting Android 8.0, so we should benefit from this. However, portable pdbs are not being loaded for me in Visual Studio. If I look in the Modules window during debug, I can see all the symbols that are loaded for my app. The only ones that are loaded are mdbs. Even for Xamarin.Forms 2.5, it is the mdb file that is loaded.

Is there anything I have to do to force the app to load portable pdbs instead of mdbs?
Comment 5 Luke McNally 2018-03-21 09:44:04 UTC
I'm not sure when this was fixed, but I can now debug across repos with portable PDBs generated in Visual Studio 2017 for Windows (15.6.3).

There still appears to be a problem when trying to debug on Windows with portable PDBs generated in Visual Studio for Mac 7.4 (build 1033). VS on Windows reports that the PDBs are loaded (Modules window), but I'm unable to step into the relevant code.

Since this is a new problem, I'll raise a new bug.