[poky] [yocto] problem about package and subpackage

Gary Thomas gary at mlbassoc.com
Wed Apr 18 07:06:36 PDT 2012


On 2012-04-18 07:57, caterwaul wrote:
> At  2012-04-18  19:57:21,"Gary  Thomas"  <gary at mlbassoc.com>  wrote:
>>On  2012-04-18  05:29,  caterwaul  wrote:
>>>  Hi,
>>>
>>>  I  wanted  to  add  dhcp(4.2.0)  into  my  image.  And  I  added  "dhcp"  into  IMAGE_INSTALL  of  my  image's  bb  file.  After  I  runing  bitbake,  the  dhcp  package  is  normally  fetched  and  compiled
>>>  and  so  on.  But  during  do_rootfs  bitbake  reported  as  follow:
>>>  Processing  dhcp...
>>>  Unable  to  find  package  dhcp  (dhcp)!
>>>  ERROR:  Function  'do_rootfs'  failed
>>>
>>>  I  note  that  in  /meta/recipes-connectivity/dhcp/dhcp4.inc  the  dhcp  package  is  split  into  4  subpackages(PACKAGES  +=  "dhcp-server  dhcp-client  dhcp-relay  dhcp-omshell").  Now  If  I
>>>  remove  "dhcp"  from  IMAGE_INSTALL  and  add  these  4  subpackages'  name  into  IMAGE_INSTALL  and  run  bitbake  AGAIN,  they  can  be  normally  added  into  my  final  image.
>>>
>>>  I've  tried  to  modify  last  part  of  dhcp4.inc  as  follow:  But  bitbake  still  reported  "Unable  to  find  package  dhcp"
>>>  FILES_${PN}  =  ""
>>>  FILES_${PN}  +=  "${sbindir}/dhcpd  ${sysconfdir}/init.d/dhcp-server  ${sysconfdir}/default/dhcp-server  ${sysconfdir}/dhcp/dhcpd.conf"
>>>  FILES_${PN}  +=  "${sbindir}/dhcrelay  ${sysconfdir}/init.d/dhcp-relay  ${sysconfdir}/default/dhcp-relay"
>>>  FILES_${PN}  +=  "${base_sbindir}/dhclient  ${base_sbindir}/dhclient-script  ${sysconfdir}/dhcp/dhclient.conf"
>>>  FILES_${PN}  +=  "${bindir}/omshell"
>>>  RDEPENDS_${PN}  =  "bash"
>>>
>>>  So  How  should  I  config  bitbake  to  get  my  image  with  dhcp  by  running  bitbake  ONLY  ONCE?
>>
>>There  is  no  "dhcp"  package,  only  dhcp-client,  dhcp-relay,  dhcp-server.
>>Pick  the  functionality  you  need  and  use  the  appropriate  package(s)
>>
>
>
> Thank you very much. But maybe my question is not clear. What I mean is:
> If I pick dhcp-server dhcp-client dhcp-relay and dhcp-omshell, bitbake will NOT start to build and report can NOT find these packages. On the other hand, if I pick dhcp, bitbake
> will start to build, but at do_rootfs stage it will report "Unable to find package dhcp (dhcp)!"(at this moment all dhcp-xxx packages has actually been generated there). So I want
> to know how to config bitbake to complete the build and produce image with whole or part of dhcp.

You are confusing packages with recipes.  Bitbake only knows how to
build recipes which in turn create packages.  Most of the time, the
packages have the same name as the recipe, but not always.  Sometimes
a recipe only creates "component" packages which, as in the case of dhcp,
do not include a package with exactly the same name as the recipe.

In order to get any of these component packages built, one needs to
tell bitbake to build the recipe (if you are trying to force it on
the command line).  However, the image needs to use the package names,
as that's what gets installed.

Maybe a bit confusing, but that's how it works.

n.b. Please keep replies on the mailing list so that everyone may benefit


-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------



More information about the poky mailing list