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
GitHub or Developer Community 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.
I installed a fresh Raspberry Pi (model 1 B) using Noobs (version 1.3.12, http://www.raspberrypi.org/downloads/). I did a full apt-get upgrade before I started the mono install. Then I followed this:
and it processes all the way until it gets to the code that is suppose to sync certificates (cert-sync) which makes a call to mono. It turns out somewhere along the process the mono executable (linked to mono-sgen) throws segmentation fault, even if I run it without any parameters.
Log when trying to install just mono-runtime:
I think I may have figured it out. I tested it on my new Raspberry Pi 2 (arm-v7) last night and it worked. The one where it's crashing is Raspberry Pi 1 (arm-v6). If this is the cause then I think we need to make sure we don't serve up the Mono package on the Xamarin package repository for arm-v6 if it's not working.
(In reply to comment #2)
> I think I may have figured it out. I tested it on my new Raspberry Pi 2
> (arm-v7) last night and it worked. The one where it's crashing is Raspberry Pi
> 1 (arm-v6). If this is the cause then I think we need to make sure we don't
> serve up the Mono package on the Xamarin package repository for arm-v6 if it's
> not working.
There are three types of ARM architecture in Debian - soft-float ARMv5 ("armel"), hard-float ARMv7 ("armhf"), and hard-float 64-bit ARM ("arm64").
The popular "raspbian" distribution for Raspberry Pi overloads the "armhf" name from Debian, and uses it to mean hard-float ARMv6 (despite being incompatible).
We build for the first two, using the standard Debian flags - armel, and armhf.
It's not our fault - or our problem - if people try to use packages for one architecture on a different architecture.
Providing packages for the original v6 Pi involves rebuilding *everything*, in a completely distinct software repository, on applicable hardware - it is impossible to provide packages for both ARMv6 hard float and ARMv7 hard float from the same repository (i.e. the same "deb" lines in sources.list), because both use the "armhf" architecture name so it is impossible for apt (or the archive manager software we use) to distinguish between the two