[yocto] recipe fails to load local files
peterengcomau001 at adam.com.au
peterengcomau001 at adam.com.au
Tue Nov 18 07:53:56 PST 2014
Thanks Bryan and Alexandru,
This all works now.There were no files starting with zd1211 anywhere
in the system and no package of that name. As soon as I put the
IMAGE_INSTALL reference, it created the files and the packages and
everything is worksing.
Thanks for your helpLachlan
----- Original Message -----
From: "Bryan Evenson"
To:"peterengcomau001 at adam.com.au" , "Alexandru Vaduva" , "Anders
Darander"
Cc:"yocto at yoctoproject.org"
Sent:Mon, 17 Nov 2014 13:49:35 +0000
Subject:RE: [yocto] recipe fails to load local files
Lachlan,
> -----Original Message-----
> From: peterengcomau001 at adam.comau
> [mailto:peterengcomau001 at adam.com.au]
> Sent: Sunday, November 16, 2014 8:55 AM
> To: Alexandru Vaduva; peterengcomau001 at adam.comau; Anders
> Darander; Bryan Evenson
> Cc: yocto at yoctoproject.org
> Subject: Re: [yocto] recipe fails to load local files
>
> There is no package called zd1211 that I can identify. If I run
> $ bitbake atmel-qt5-demo-image -g -u depexp
> It does not list a package that has zd1211 in it. Having said
that, if I run
> $ find -name zd1211*
> It shows that zd1211rw and zd1211rw.ko files are in the rootfs in
the
> tmp/work directory under kernel/drivers/net/wirless.
>
> Is that what you are referring to?
>
> Lachlan
>
>
> ----- Original Message -----
>
> From:
> "Alexandru Vaduva"
>
> To:
> "peterengcomau001 at adam.com.au"
> , "Anders Darander"
> , "Bryan Evenson"
>
> Cc:
> "yocto at yoctoproject.org"
>
> Sent:
> Sat, 15 Nov 2014 19:53:14 +0000 (UTC)
>
> Subject:
> Re: [yocto] recipe fails to load local files
>
>
>
> Is "zd1211" available in packages and package-split/zd1211-
> firmware*?
To expand on Alexandru's question, the first step is to verify that
the library files are now being added to the zd1211-firmware package.
Assuming you are using opkg for package management search in
tmp/deploy/ipk/ for any files named "zd1211-firmware.*ipk". You
should find one named something like zd1211-firmware_1.5-r0_
sama5d3xek.ipk. Open the package up with file-roller and verify that
the lib/firmware directory contains the libraries that you intended
to add to the package. If so, then the package is being built
correctly.
Once the package is being built correctly, the package needs to be
added to your image. Packages are only added to an image when they
are specifically listed in the image recipe or if it is a required
dependency of a package that has been added to the image. If you
don't already have a .bbappend for the image, you need to create one
in your layer and add the zd1211-firmware package. The .bbappend
needs to follow the same directory structure as the image recipe in
the meta-atmel layer. So for your specific case:
1. Create the file
~/poky/meta-atmel-lsp/recipes-qt/images/atmel-qt5-demo-image.bbappend,
adding directories as needed for the full path.
2. Add the following contents to the atmel-qt5-demo-image.bbappend:
IMAGE_INSTALL += "
zd1211-firmware
"
The extra lines and the at the end of the line is there to make sure
two package names don't get merged together when IMAGE_INSTALL gets
built.
3. If you are not using the PR service
(http://www.yoctoproject.org/docs/1.7/mega-manual/mega-manual.html#working-with-a-pr-service),
also add the following to your .bbappend:
PR = "r1"
otherwise you may not see your change in the final image.
4. Re-build atmel-qt5-demo-image. You should now see your library
files in the final image.
Regards,
Bryan
After you make that change and rebuild
>
>
> On Saturday, November 15, 2014 9:09 PM,
> "peterengcomau001 at adam.com.au"
> wrote:
>
>
>
> Thanks, I have done the changes and no longer get the error.
> However, the firmware files still do not get generated when I
build the
> image.
> The current recipe I am using is:
> ______________________________________
> DESCRIPTION = "Belkin Wifi Firmware"
> LICENSE = "GPL"
> PR = "r0"
>
> FILESPATH = "${THISDIR}/${PN}"
> FILES_${PN} += "/lib/firmware/zd1211"
>
> SRC_URI = "
> file://zd1211_ub
> file://zd1211_uph
> file://zd1211_uphm
> file://zd1211_uphr
> file://zd1211_ur
> "
>
> S = "${WORKDIR}"
>
> do_install() {
> install -d ${D}/lib/firmware/zd1211
> install -m 0555 ${WORKDIR}/zd1211_* ${D}/lib/firmware/zd1211/
> }
> ________________________________________
>
> No errors result when building the image. However, there is no
> directory or files in:
> ~/poky/build-atmel/tmp/work/sama5d3xek-poky-linux-
> gnueabi/atmel-qt5-demo-image/1.0-r0/rootfs/lib/firmware
>
> The recipes are in file:
> ~/poky/meta-atmel-lsp/recipes-lsp/zd1211-firmware
> There are other recipes in ~/poky/meta-atmel-lsp/recipes-lsp that
> work, so bitbake can see these ok (but these are bbappend, not bb
files)
>
> In ideas why the
>
>
>
> ----- Original Message -----
>
> From:
> "Anders Darander"
>
> To:
> "Bryan Evenson"
>
> Cc:
> "peterengcomau001 at adam.com.au"
> , "yocto at yoctoproject.org"
>
>
> Sent:
> Fri, 14 Nov 2014 15:44:24 +0100
>
> Subject:
> Re: [yocto] recipe fails to load local files
>
>
> Just a few nitpick's..
>
> * Bryan Evenson [141114
> 15:21]:
>
> > > LICENSE = "CLOSED"
> > > FILES_${PN} += "~/poky/meta-atmel-lsp/recipes-
> lsp/zd1211-
> > > firmware/zd1211-firmware"
>
> > FILES doesn't specify where to find the files on the build
> machine, it
> > specifies where the installed files exist on the target
> filesystem.
> > This is what the error you are seeing is telling you; the files
> were
> > installed in the do_install step but they did not get placed in
> the
> > final package In your case I believe:
>
> > FILES_${PN} += "${libdir}/zd1211_*"
>
> FILES_${PN} += "/lib/firmware/zd1211"
>
> > would work.
>
> > > SRC_URI = "
> > > file://zd1211_ub
> > > file://zd1211_uph
> > > file://zd1211_uphm
> > > file://zd1211_uphr
> > > file://zd1211_ur
> > > "
>
> > > do_install() {
> > > install -d ${D}/lib/firmware/zd1211
> > > install -m 0555 ${WORKDIR}/zd1211_*
> ${D}/lib/firmware/zd1211/
> > > }
>
> > As mentioned in the FILES variable description in the Yocto
> manual,
> > you should use the standard path variables whenever
> possible. The
> > list of available path variables are near the top of
> > meta/conf/bitbake.conf. That means in your case the
> following would
> > be better:
>
> Well, in general that's true. Though, in this specific case, it
> should
> actually be a hardcoded /lib/firmware. ${libdir} could be lib64
> or
> something else, especially in a multilib-build. However, the
> firmware
> files are always searched for in /lib/firmware.
>
> Cheers,
> Anders
>
> > do_install() {
> > install -d ${D}/${libdir}/firmware/zd1211
> > install -m 0555 ${WORKDIR}/zd1211_*
> ${D}/${libdir}/firmware/zd1211/
>
> --
> Anders Darander
> ChargeStorm AB / eStorm AB
>
>
> ---- Message sent via Adam Internet WebMail -
> http://www.adam.com.au/
>
> --
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org
> https://lists.yoctoprojectorg/listinfo/yocto
>
>
>
>
---- Message sent via Adam Internet WebMail - http://www.adam.com.au/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141119/2f0932ec/attachment.html>
More information about the yocto
mailing list