Determining Custom Linux Dependencies

Thanks again for the great content you provide on the subject of Embedded Linux. I have a question regarding my Custom Linux Dependencies.

I have put together a simple test project on a headless Debian image which utilizes GPIO, I2C, SPI, MQTT interfaces. Currently all drivers are entirely in user-space. I am hoping to now build a suitable image, possibly using Yoe Distro (RPi v3 A+) prior to writing specific drivers in the Kernel (for learning purposes).

Is this a sensible approach in the first instance for development purposes?

How should I approach determining which dependencies I require in my custom system (Iā€™m currently building the test project on the host system over SSH)?

Thanks, Martyn

1 Like

Hi @mjago ā€“ welcome to the TMPDIR community, and thanks for the feedback!

Yes, I think starting out easy (in user-space) is a good approach. Even using debian/raspbian on rPI is a good option for one-off development. If you want a more custom/smaller image that you can cross-compile or want to scale up to production volumes, then Yoe is a good option.

Not sure I completely understand your question, but typically I start with yoe-simple-image, then add stuff as needed by creating a custom image that typically just includes yoe-simple-image and then adds packages as needed. A lot of dependencies are figured out automatically as the build system looks at what libraries each binary needs, then includes the packages for that lib.

Yocto has excellent tooling for kernel development using devtool so give that a try once you get to that point.

Please feel free to clarify if I did not understand your questions.