The MinnowBoard Chronicles Episode 21: Building and Installing Linux, Part 2

This week, I had some success building a Linux image using the Yocto Project. But, that’s the good news.

From last week’s Episode 20 of the MinnowBoard Chronicles, I described the trials and tribulations of the two projects I have underway: installing Ubuntu 16.04.1 LTS on my MinnowBoard Turbot, and building a complete Linux image using the Yocto Project.

To install the Ubuntu image, I’ve just been following the directions at the MinnowBoard site’s tutorial. The procedure is very straightforward, but the bad news is that I haven’t yet gotten it completed. Last week, I kept getting the following error message:

(intraramfs) Unable to find a medium containing a live file system

I found that I could get past this stage, and actually get to the main installer page, by putting the USB stick with the ISO image on the top USB port, and the keyboard input on the bottom USB port, opposite to what is described in the tutorial, as diagrammed below:

MinnowBoard connectors pic

The above is what’s in the tutorial.

When I swap them, I don’t get the intraramfs error, and am able to get to the first installation screen:

Ubuntu install screen

But, I can’t get any further! The MinnowBoard won’t accept any keyboard or mouse input at that point. I think maybe it wants the keyboard/mouse USB hub to be plugged into USB port 1. I’m not exactly sure what is going on here; I think I’ll need to try yet another USB flash stick, as my next step.

So, being not easily discouraged, I returned to my second project in-work, which is building the Yocto image. Last week, the build blew up due to a lack of space on my PC hard drive. As I mentioned before, I’m building this within a Debian VM using VirtualBox on my old, slow Windows PC at home. By poking around a little, I discovered that I had only allocated 8GB of hard disk space to the VM, as per the Linux tutorial I had used months ago to help me learn about virtual machines and Linux. I quote from page 20:

“8GB should be plenty for learning about Linux servers.”

But, of course, learning about Linux, and building an image, are two different things. I decided I needed about 10X that amount of space to do a complete build.

So, that’s what I did. It took me a couple of hours to create the bigger VM, and then re-follow the Yocto build instructions. After 15 hours of my home PC running flat out, below is the screen I saw:

Yocto build working

1,230 of 6,060 tasks have been executed after 15 hours. So, at this rate, it’s going to take a few days to complete the build!

I know, I know, don’t laugh. I’ve got to get a faster PC. This machine is about seven years old. And I shouldn’t be running in a VM. So, that’s a project for another day: building a state-of-the-art faster machine. I hear there are good prices available for the new AMD Ryzen 16-core Threadripper, or maybe an Intel Skylake-X…..and I’d like to get a good graphics card with it too (for gaming, and also to learn something about cryptocurrency mining). All these hobbies, though, take me away from blogging (and, oh yes, there’s that work thing too….hopefully my boss hasn’t read this far).

In any event, I hope to finish the Yocto build in time for Episode 22!

Of course, all this work is aimed at debugging UEFI, GRUB, and ultimately Linux on the MinnowBoard, with our SourcePoint product. I’m particularly interested in using Intel Processor Trace (see Episode 11) to watch the boot flow. A great eBook on that subject is at Intel Adds High-Speed Instruction Trace (note: requires registration).

Alan Sguigna