[Vm-dev] Compiling squeak.cog.spur on Pi

Phil (list) pbpublist at gmail.com
Fri Jun 24 21:16:03 UTC 2016


Tim,

On Fri, 2016-06-24 at 10:32 -0700, tim Rowledge wrote:
>  
> 
> > On 23-06-2016, at 8:52 PM, Phil (list) <pbpublist at gmail.com> wrote:
> > 
> > 
> > IIRC, it has to do with the build of gcc that is installed for
> > (most?)
> > ARMv7 distros.  Are you and Elliot using an armel or armhf based
> > installs or just the stock rpi install (which is ARMv6 hf I think)?
> 
> I’m using the stock latest Raspbian (as I have throughout the last ~4
> years) and I’m reasonably sure Eliot is too. The gcc version
> currently is 4.9.2.

Got it.  Apologies for not being clearer in my previous comment...

> 
> >  Most of the ARM world (with the notable exception of rpi) is
> > running
> > armhf these days which is where the problem seems to be (i.e. I was
> > able to build using the shipped mvm as-is on armel, but not armhf)
> 
> To the best of my knowledge Pi uses hardfloat and has for a long
> time. Let’s see
> `dpkg —print-architecture` -> armhf
> So yes, hard float. I think this has been true since ~2013.
> 

Right, that's the main thing that makes Raspbian different from other
Linux distros on ARM: Raspbian is an armhf build for ARMv6.  This is
*not* what the rest of the Linux world is doing.

It is at least in the ARMv7 armhf (i.e. non-Raspbian) flavor that gcc
can't build the VM using the default flags (i.e. the build of gcc
doesn't appear to support it).  This was the issue for me as I don't
build the VM on Raspbian but rather in an ARMv7 VM running (non-
Raspbian) armhf for use on my Pi 2 and BeagleBoard-xM.  Now, why is
Dave seeing this issue presumably running Raspbian on his new Pi?  That
I don't know...

> Several people have gone to the trouble of compiling Raspbian kernels
> etc with armv7 settings and found it makes no measurable difference,
> which means that it would be silly of the Pi people to split things -
> which of course they would have to do to support the several million
> older Pis out there. Honestly, since the Pi is probably the main ARM
> SBC by a very, very, large margin it would be smartest for everyone
> else to maintain sensible compatibility.

This is like saying that since Windows is the main x86 platform by a
very, very large margin everyone should fall in line and support it.
 This doesn't make things run any better for you if you're not on
Windows.  It's also a narrow view of the ARM platform: if the priority
is unit volume then Android/iOS on ARMv7 should be the priority since
Pi shipments are rounding error in the ARM ocean.  Some of us have been
running Linux on ARM since before the Pi existed and/or on different
form factors.  The good news is that this doesn't need to be an
either/or decision: Eliot's post about having multiple build configs
for ARM would solve the issue nicely for everyone (i.e. don't assume
that everyone is running Raspbian on a Pi, but support it for the
majority that do)

> 
> And none of this alters the fact the Eliot & I can build vms without
> making any arch setting change. 
> 

That likely solves the problem for the majority of users, but not
everyone.  The precompiled ARM binaries have been problematic for me
for a couple of years (specifically because they have had an incomplete
and varying set of plugins)  So it's great that they exist, but they
aren't the best fit for everyone.  And it's also great that the current
default build config works for both of you, but again it doesn't work
for everyone.

> tim
> --
> tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
> Useful random insult:- Ignorant, and proud of it.
> 
> 

Thanks,
Phil


More information about the Vm-dev mailing list