* User Manual: HelloWorld example questions. @ 2013-06-19 13:51 Bill Traynor 2013-06-21 15:40 ` Bill Traynor 0 siblings, 1 reply; 4+ messages in thread From: Bill Traynor @ 2013-06-19 13:51 UTC (permalink / raw) To: bitbake-devel NOTE: The following questions are posed within the context of the BitBake User Manual rewrite. In working through the following two HelloWorld examples: http://www.mail-archive.com/yocto@yoctoproject.org/msg09379.html http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/ there are some concepts that I don't quite understand. 1. The simplest HelloWorld possible would only require a recipe and source, correct? The concepts of Classes and Layers is beyond the basics, is it not? Or is the simplest of HelloWorld examples without concepts such as Classes and Layers essentially pointless? 2. Why isn't there a sample base.bbclass in the bitbake source tree? 3. I think it would be very beneficial to understanding BitBake to build out the HelloWorld example beyond the basics, incorporating and explaining each concept along the way. My thinking is that given the true value of BitBake is in the building of complex systems, it would be beneficial to walk through the concepts as simply as possible to demonstrate the concepts that require leverage to accomplish this. This would both demonstrate how BitBake works whiile avoiding overuse of OE or YP project examples. Is this idea reasonable, or beyond the scope of the User manual? That's all for now. I appreciate the feedback. Bill ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: User Manual: HelloWorld example questions. 2013-06-19 13:51 User Manual: HelloWorld example questions Bill Traynor @ 2013-06-21 15:40 ` Bill Traynor 2013-06-21 17:03 ` Paul Eggleton 0 siblings, 1 reply; 4+ messages in thread From: Bill Traynor @ 2013-06-21 15:40 UTC (permalink / raw) To: bitbake-devel On Wed, Jun 19, 2013 at 9:51 AM, Bill Traynor <btraynor@gmail.com> wrote: > NOTE: The following questions are posed within the context of the > BitBake User Manual rewrite. > > In working through the following two HelloWorld examples: > > http://www.mail-archive.com/yocto@yoctoproject.org/msg09379.html > http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/ > > there are some concepts that I don't quite understand. > > 1. The simplest HelloWorld possible would only require a recipe and > source, correct? The concepts of Classes and Layers is beyond the > basics, is it not? Or is the simplest of HelloWorld examples without > concepts such as Classes and Layers essentially pointless? > To answer myself as I work through my hello world project from first priciples, i.e. beginning with an empty directory and solving errors one by one I realize that the concept of Layers is necessary given that the first configuration file BitBake looks for is bblayers.conf, which is where I set BBPATH. > 2. Why isn't there a sample base.bbclass in the bitbake source tree? Oops, I meant a sample bblayers.conf, NOT base.bbclass which does indeed exist. Does it not make sense to have a bblayers.conf containing at minimum: BBPATH := "${TOPDIR}" Perhaps even comment out the latter with a short explanation of what un-commenting out implies? > > 3. I think it would be very beneficial to understanding BitBake to > build out the HelloWorld example beyond the basics, incorporating and > explaining each concept along the way. My thinking is that given the > true value of BitBake is in the building of complex systems, it would > be beneficial to walk through the concepts as simply as possible to > demonstrate the concepts that require leverage to accomplish this. > This would both demonstrate how BitBake works whiile avoiding overuse > of OE or YP project examples. Is this idea reasonable, or beyond the > scope of the User manual? I'm finding it very valuable to step through a simple example using the -DDD debug parameter to understand what's going on when I issue the BitBake command. > > That's all for now. I appreciate the feedback. > > Bill ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: User Manual: HelloWorld example questions. 2013-06-21 15:40 ` Bill Traynor @ 2013-06-21 17:03 ` Paul Eggleton 2013-06-21 17:22 ` Bill Traynor 0 siblings, 1 reply; 4+ messages in thread From: Paul Eggleton @ 2013-06-21 17:03 UTC (permalink / raw) To: Bill Traynor; +Cc: bitbake-devel Hi Bill, On Friday 21 June 2013 11:40:27 Bill Traynor wrote: > On Wed, Jun 19, 2013 at 9:51 AM, Bill Traynor <btraynor@gmail.com> wrote: > > NOTE: The following questions are posed within the context of the > > BitBake User Manual rewrite. > > > > In working through the following two HelloWorld examples: > > > > http://www.mail-archive.com/yocto@yoctoproject.org/msg09379.html > > http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/ > > > > there are some concepts that I don't quite understand. > > > > 1. The simplest HelloWorld possible would only require a recipe and > > source, correct? The concepts of Classes and Layers is beyond the > > basics, is it not? Or is the simplest of HelloWorld examples without > > concepts such as Classes and Layers essentially pointless? > > To answer myself as I work through my hello world project from first > priciples, i.e. beginning with an empty directory and solving errors > one by one I realize that the concept of Layers is necessary given > that the first configuration file BitBake looks for is bblayers.conf, > which is where I set BBPATH. BitBake does implement most of the support for layers, yes, so as a concept it should be covered in the BitBake documentation. You may be able to bring in non-OE-specific portions of the Yocto Project manuals to help get started here. > > 2. Why isn't there a sample base.bbclass in the bitbake source tree? > > Oops, I meant a sample bblayers.conf, NOT base.bbclass which does > indeed exist. Does it not make sense to have a bblayers.conf > containing at minimum: > > BBPATH := "${TOPDIR}" > > Perhaps even comment out the latter with a short explanation of what > un-commenting out implies? I think maybe it ought to have both, since base.bbclass is directly referred to by bitbake and thus required. I do wonder if it ought to be made clearer that the bitbake.conf provided by bitbake (plus whatever other files we provide) is an example that's meant to be copied and built upon rather than used and edited in-place; perhaps adjusting the directory structure might help with this. > > 3. I think it would be very beneficial to understanding BitBake to > > build out the HelloWorld example beyond the basics, incorporating and > > explaining each concept along the way. My thinking is that given the > > true value of BitBake is in the building of complex systems, it would > > be beneficial to walk through the concepts as simply as possible to > > demonstrate the concepts that require leverage to accomplish this. > > This would both demonstrate how BitBake works whiile avoiding overuse > > of OE or YP project examples. Is this idea reasonable, or beyond the > > scope of the User manual? > > I'm finding it very valuable to step through a simple example using > the -DDD debug parameter to understand what's going on when I issue > the BitBake command. Stepping through the HelloWorld example sounds reasonable, however I would caution that the debug output does tend to change over time, so introducing it may increase the burden of maintaining the manual. Cheers, Paul -- Paul Eggleton Intel Open Source Technology Centre ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: User Manual: HelloWorld example questions. 2013-06-21 17:03 ` Paul Eggleton @ 2013-06-21 17:22 ` Bill Traynor 0 siblings, 0 replies; 4+ messages in thread From: Bill Traynor @ 2013-06-21 17:22 UTC (permalink / raw) To: Paul Eggleton; +Cc: bitbake-devel On Fri, Jun 21, 2013 at 1:03 PM, Paul Eggleton <paul.eggleton@linux.intel.com> wrote: > Hi Bill, > > On Friday 21 June 2013 11:40:27 Bill Traynor wrote: >> On Wed, Jun 19, 2013 at 9:51 AM, Bill Traynor <btraynor@gmail.com> wrote: >> > NOTE: The following questions are posed within the context of the >> > BitBake User Manual rewrite. >> > >> > In working through the following two HelloWorld examples: >> > >> > http://www.mail-archive.com/yocto@yoctoproject.org/msg09379.html >> > http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/ >> > >> > there are some concepts that I don't quite understand. >> > >> > 1. The simplest HelloWorld possible would only require a recipe and >> > source, correct? The concepts of Classes and Layers is beyond the >> > basics, is it not? Or is the simplest of HelloWorld examples without >> > concepts such as Classes and Layers essentially pointless? >> >> To answer myself as I work through my hello world project from first >> priciples, i.e. beginning with an empty directory and solving errors >> one by one I realize that the concept of Layers is necessary given >> that the first configuration file BitBake looks for is bblayers.conf, >> which is where I set BBPATH. > > BitBake does implement most of the support for layers, yes, so as a concept it > should be covered in the BitBake documentation. You may be able to bring in > non-OE-specific portions of the Yocto Project manuals to help get started here. > >> > 2. Why isn't there a sample base.bbclass in the bitbake source tree? >> >> Oops, I meant a sample bblayers.conf, NOT base.bbclass which does >> indeed exist. Does it not make sense to have a bblayers.conf >> containing at minimum: >> >> BBPATH := "${TOPDIR}" >> >> Perhaps even comment out the latter with a short explanation of what >> un-commenting out implies? > > I think maybe it ought to have both, since base.bbclass is directly referred > to by bitbake and thus required. I do wonder if it ought to be made clearer > that the bitbake.conf provided by bitbake (plus whatever other files we > provide) is an example that's meant to be copied and built upon rather than > used and edited in-place; perhaps adjusting the directory structure might help > with this. Yes, this is exactly how I'm describing the sample files being used for HelloWorld, i.e. copy them to the project directory and move forward from there. > >> > 3. I think it would be very beneficial to understanding BitBake to >> > build out the HelloWorld example beyond the basics, incorporating and >> > explaining each concept along the way. My thinking is that given the >> > true value of BitBake is in the building of complex systems, it would >> > be beneficial to walk through the concepts as simply as possible to >> > demonstrate the concepts that require leverage to accomplish this. >> > This would both demonstrate how BitBake works whiile avoiding overuse >> > of OE or YP project examples. Is this idea reasonable, or beyond the >> > scope of the User manual? >> >> I'm finding it very valuable to step through a simple example using >> the -DDD debug parameter to understand what's going on when I issue >> the BitBake command. > > Stepping through the HelloWorld example sounds reasonable, however I would > caution that the debug output does tend to change over time, so introducing it > may increase the burden of maintaining the manual. That's a good point. But it's a burden I'm willing to endure at this point. Perhaps once I understand the nooks and crannies of what BitBake is doing I'll rewrite things to be more descriptive. > > Cheers, > Paul > > -- > > Paul Eggleton > Intel Open Source Technology Centre ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-06-21 17:22 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-06-19 13:51 User Manual: HelloWorld example questions Bill Traynor 2013-06-21 15:40 ` Bill Traynor 2013-06-21 17:03 ` Paul Eggleton 2013-06-21 17:22 ` Bill Traynor
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.