Hi @Ming A friend of mine was wondering: How do you approach a situation where a build doesn't work
Hi @Ming A friend of mine was wondering:
How do you approach a situation where a build doesn't work as expected due to variables changing, skipping, or being overridden by included meta-layers? The build is technically successful, but the outcome isn't what we anticipated. How can we debug this kind of behavior and effectively track variable values and overrides?
For a concrete example, consider an SoC vendor meta-layer with two different versions, such as community and proprietary. We aim to include only specific parts of the vendor's meta-layer, but it's interfering with the development kit BSP layers.
14 Replies
Amazing keen to see you get dug into those architectures
Without knowing the specific details, the approach I would take is:
First:, run
bitbake-layers show-layers
This will show you all the layers you have defined and more importantly, their priorities.
The next thing would be to run
bitbake -e <recipe>
Where <recipe>
is the image or recipe you are interested in. This will show you all you variables along with how and where they are set. This can be a large output, so I normally pipe it to file
bitbake -e my-production-image > image-env.log
Now you can start searching that file for the variables you are interested in.
One thing I have found is that the quality of layers from vendors is very.... 'variable'! I have been know to create an intermediate repository from a vendor layer and then manually cherry-pick the bits I actually want. It is a pain, you you now have to manually keep the layers up to date, but it can be less effort than tearing your hair out trying to work out how to work around the vendor.@Umesh Lokhande I am unable to reply in the thread, but I have a question - here python you mean micro python right ,
for embedded systems ?
hey @Renuel Roberts , my response came in late but, I really appreciate its modular design and the wide range of drivers available. These features make it easy to create flexible and efficient solutions for various embedded applications, all while ensuring that everything runs smoothly in real time. hope this suffices.
I mean to say generic Python, but it doesn't matter if you'd consider micro Python. Companies usually expect candidates to have problem-solving abilities irrespective of programming languages
Ok thanks
🗓️ Friendly Reminder about Upcoming Event @Event Pings
Join us on Friday, October 11th, at 15:00 GMT for a deep dive into "Embedded or Not, Virtualization is Headed Towards a Device Near You." Explore how virtualization technology is transforming embedded systems, learn about the role of containers, and share your own experiences with the community!
See you there!
https://discord.gg/7YmCCMFe?event=1293245463713288233
@Middleware & OS and @MCU, MPU & Firmware, do you build devices that leverage embedded virtualization? I'm interested to know how many "IoT devices" utilize virtualization these days.
And if so, are you using OSs with AMP that abstract some of that complexity?
Haven't used virtualization in production until now
Just learning purposes
What are the processors you've deployed on in production? I'm interested because I wonder a lot of time if the devs even know what they're deploying on these days?
WORA-style
If it's only processor.
I have worked with a Qualcomm processors, I can't remember the exact one but it was a application processor
And
NXP imx8
There are few FPGA which had processors, I worked with like AMD zynq series
This is related to specifically SDR for military
There is standard to follow called SCA(Software defined architecture) which
Is that the Zynq?
Which makes it compulsory to be cross compatible
Companies like Nordiasoft, CRC canada deal with by giving SW framework.
But goddamn, there are so costly!!
Could be implemented in any tbh
We were aiming with zynq but backed out due to financial constraints
What did you end up deploying on? Qualcomm?