On Mon, Jun 26, 2017 at 12:28 PM, Mart Raudsepp <l...@gentoo.org> wrote:
> Ühel kenal päeval, E, 26.06.2017 kell 10:32, kirjutas R0b0t1:
>> If you want to use Gentoo on an embedded device you should be ready
>> to set up crossdev and a crossroot for it.
>
> That's for sure, except... RPi3 is NOT an embedded device in any
> traditional sense of the word and I don't really like the term extended
> to such machines. Embedded is what I'd call a Cortex-M maybe, not some
> general purpose Cortex-A quad core 64bit "beast" with full USB/HDMI and
> OpenGL support. It runs circles around the first desktop  machine I
> installed Gentoo on. It is roughly equal to your low end cheap Atom
> type laptops as far as CPU performance is concerned. It just has a slow
> I/O and less RAM than we consider the norm these days.
>

The BCM2837 is a phone processor. If phones are not an embedded device
then I'm not sure what is. The RAM for the device is
package-on-package (i.e. high integration) and save the video outputs
most of the desktop-like ports (like the Ethernet port) are obtained
via hardwired connection to a USB adapter. The slow IO, limited
memory, and lack of general purpose communication interfaces besides
USB is what keeps it from being a good general purpose computer.

(Arguably the BCM2837 is intended for devices less complex than
phones, or precisely the kind of thing people call an "embedded
device.")

> I see no reason to crossroot for it unless that's ones desire in itself
> (for example when it works, it might be worth the time save for mass
> testing of stuff, e.g initial arch team work), or you really need it
> for some working linker memory limitations when trying to do some
> desktop stuff (browser engines, rust). For headless cases, not worth
> the hassle whatsoever imho. Yes, gcc itself will take half a day or
> whatnot, but hey, it's just taking you some 3-5W chugging along.
>

Following from the above, the devices were never meant to self-host
their OS and are very bad at doing so. All large projects I know of
lease time on powerful ARM servers to produce their packages because
doing it on the devices most people use the packages on is extremely
painful.

This situation really echoes the difference seen between content
producers and consumers when using desktops and phones. If you need a
device to run a simple server or act as a gateway then using
precompiled packages is fine, but if you're expecting to develop for
the device you need a separate computer to do most of your compilation
on.

Once you get a toolchain, though, compiling simple programs on your
device is fast enough to be reasonable. Things like GCC can take
nearly three days even on the Raspberry Pi 3.

> crossdev sure, if you think with the limited I/O a distcc host can help
> out.
>
> But sure, it can be educational, so have at it if you want; when it
> works, it'll get your packages done faster if you have a beefy x86_64.
>
>
> Mart
>

My personal recommendation is that an interest in the ARM architecture
be pursued by purchasing an ARM server (or desktop). Anything else is
a waste of time and money. Some of them are starting to become
affordable, e.g. https://softiron.com/products/overdrive-1000/.

R0b0t1.

Reply via email to