[bitbake-devel] *-dbg package...

Khem Raj raj.khem at gmail.com
Mon Aug 25 15:46:57 UTC 2014


On 14-08-25 10:24:57, Mark Hatle wrote:
> First this is the wrong list.  The question should have gone to oe-core
> devel, or openembedded-devel lists.  (I have CC'd the first)
> 
> On 8/21/14, 9:59 PM, info at sd-kyber.com wrote:
> >Hi,
> >I’m trying to write ( and to use ) a recipe which should build a simple  .rpm,
> >  which contains the /usr/lib/libaffinity.so and a  few header files within
> >/usr/include/affinity/* subdir.

if you install it right then you should get one rpm with library another
one ${PN}-dev which should contain the headers and all debug info will
be split out into a rpm of its own ${PN}-dbg, this is standard
packaging strategy in OE.


> >
> >However, it looks like bitbake is trying / “forcing” me to  build a ${PN}-dbg
> >package….:

Yes it will, is there any issue with that ?


> >
> >I’m doing the following steps:
> >
> >1. recipe:
> >“
> >…
> >inherit  cmake pkgconfig
> >
> >PACKAGES = "${PN}"

overriding PACKAGES will leave some unpackaged files.

> >FILES_${PN} = "${libdir}/libaffinity.so /usr/include/affinity/*”
> >…

I would suggest to use standard packaging split if thats not a big
issue.

> >“
> 
> Just removing '${PN}-dbg' does not inform the system that you do not want
> debug information to be generated.  There is a set of standard routines,
> performed after do_install, that will generate the debug information unless
> disabled.
> 
> To disable the routines you set:
> 
> INHIBIT_PACKAGE_DEBUG_SPLIT = '1'
> INHIBIT_PACKAGE_STRIP = '1'
> 
> There are two settings they can be used separately, but in your case you
> likely want both.
> 
> INHIBIT_PACKAGE_DEBUG_SPLIT = '1' disables the files in your package from
> being split into run-time and debug components.
> 
> INHIBIT_PACKAGE_STRIP = '1' disabled the system from attempting to strip the
> run-time components of debug information.
> 
> --Mark
> 
> >So, I assume  I’ m asking to build only 1 package.
> >
> >2. During the bitbake processing, as the compilation, build,  and installation
> >are over, the  files are copied into the ${D} directory, as expected:
> >“
> >michael at localhost image]$ pwd
> >/home/michael/Devlab/poky/build-atmel/tmp/work/cortexa5t2hf-vfp-poky-linux-gnueabi/affinityng/0.1-r0/image
> >[michael at localhost image]$ cd usr
> >[michael at localhost usr]$ ls -la
> >total 16
> >drwxr-xr-x. 4 michael michael 4096 Aug 21 19:57 .
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 ..
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 include
> >drwxr-xr-x. 2 michael michael 4096 Aug 21 19:57 lib
> >“
> >So far, everything as expected in accordance with the Yocto reference.
> >
> >3. According to the manual reference  - "The |do_package| and
> >|do_packagedata| tasks combine to analyze the files found in the |D|
> ><http://www.yoctoproject.org/docs/current/ref-manual/ref-manual.html#var-D> directory…”,
> >  I would expect that the package would be build.
> >However, the  attempt to build is failing. with the error:
> >“…
> >ERROR: QA Issue: affinityng: Files/directories were installed but not shipped
> >   /usr/src
> >   /usr/lib/.debug
> >   /usr/lib/.debug/libaffinity.so
> >   /usr/src/debug
> >   /usr/src/debug/affinityng
> >   /usr/src/debug/affinityng/0.1-r0
> >   /usr/src/debug/affinityng/0.1-r0/kernel
> >…
> >“
> >
> >4. Following the reference, I checked the PKGD directory, where the files should
> >be before split….
> >And I noticed that there is the src directory there,  in addition to
> >  directories — include and lib — the only ones I was expecting to see there.
> >( see log below ) .
> >
> >“
> >/home/michael/Devlab/poky/build-atmel/tmp/work/cortexa5t2hf-vfp-poky-linux-gnueabi/affinityng/0.1-r0/package/usr
> >….
> >[michael at localhost usr]$ ls -la
> >total 20
> >drwxr-xr-x. 5 michael michael 4096 Aug 21 19:57 .
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 ..
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 include
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 lib
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 src
> >[michael at localhost usr]$ pwd
> >/home/michael/Devlab/poky/build-atmel/tmp/work/cortexa5t2hf-vfp-poky-linux-gnueabi/affinityng/0.1-r0/package/usr
> >[michael at localhost usr]$ cd src
> >[michael at localhost src]$ ls -la
> >total 12
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 .
> >drwxr-xr-x. 5 michael michael 4096 Aug 21 19:57 ..
> >drwxr-xr-x. 3 michael michael 4096 Aug 21 19:57 debug
> >[michael at localhost src]$
> >“
> >5. It looks like that as result of package split, the  include & lib directories
> >are used properly to build affinityng package, at least it is shown in
> >packages-split properly.
> >But then ,  the content of the src directory is causing the problem with QA.
> >
> >6. At the same time, if I ask to build  ${PN}-dbg package in addition - both
> >packages are build, no QA complains, and all src/debug/* are going into the -dbg
> >package…
> >
> >I wonder,
> >- why does the src directory appear within  PKGD/usr? ( If there is no such
> >directory within the ${D} directory...)
> >- where is the definition for  -dbg package is coming from, and is it possible
> >to disable it?
> >
> >May be somebody have the answer or suggestion what to check next….
> >
> >Thanks for a kind attention to the matter.
> >
> >Have a great day,
> >Michael.
> >
> >
> >
> 
> -- 
> _______________________________________________
> bitbake-devel mailing list
> bitbake-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/bitbake-devel



More information about the bitbake-devel mailing list