[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