this post was submitted on 13 Dec 2024
6 points (87.5% liked)

Embedded

263 readers
2 users here now

We talk and share about anything Embedded, including;

Icon base by Lorc under CC BY 3.0 with modifications to add a gradient

founded 1 year ago
MODERATORS
6
submitted 1 week ago* (last edited 1 week ago) by [email protected] to c/[email protected]
 

Hello all, I'm an embedded software guy struggling with Yocto. I'm not asking for assistance as I cannot be saved. Rather, I'd like to make my own. How hard it would be to put a Linux distro onto a device without it? For example, if I were to get a perfectly good distro (let's just say Debian) with the right architecture going in a container. Is there a simple way to combine that with u-Boot, and other crap from a SoC manufacturer to build an image? If that is oversimplifying, I've done Linux from scratch before, and I'd be willing to go that route as well. I guess the issue boils down to the specifics like building the image and anything else that I'm not aware of.

So, what part of this idea is going to be a lot harder than I'm giving it credit for?

By the way, I'm aware of Buildroot. This is more for learning purposes, and who knows... maybe I will actually make something out of it.

you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 3 points 1 week ago (1 children)

Yeah I tried Buildroot and Yocto and got frustrated. Buildroot did work, but it does a ton of stuff with a ton of not-very-well-documented options, and it definitely wasn't integrated into a proper build system. Like there's no way I'd trust any kind of incremental build.

I ended up doing it myself. Tbf I was just benchmarking kernel boots so I didn't need userspace or even real hardware. I only needed OpenSBI (a RISC-V firmware thing) and the kernel.

Frankly OpenSBI is a rather undocumented mess too. Incremental OpenSBI builds don't work, and I did try and contribute fixes but despite the repo being on GitHub they auto-close PRs and tell you to use git send email from the command line to a mailing list like it's the 90s. I shit you not. How to keep away contributors.

Anyway my conclusion is that the whole Linux OS building story is a shit show. If you only want a basic image with busybox etc. you can probably do it yourself and then you will actually understand it, but you will just be recreating Buildroot.

[โ€“] [email protected] 2 points 1 week ago

Ha. I've never used buildroot, but I think I'm going to have a go at it. I promise not to use python ;]

Thank you for the insight.