On 9/2/11 11:24 AM, McClintock Matthew-B29882 wrote:
> On Fri, Sep 2, 2011 at 10:48 AM, Mark Hatle <mark.ha...@windriver.com> wrote:
>> The normal OE approach is to resolve all items by run-time dependencies.  
>> That
>> is why a lot more is built then installed.
>>
>> So if you want a system capable of running bash, you would create a task (and
>> related image) that simply has a RDEPENDS on "bash".  Everything else is
>> determined automatically.  So even if you build ncurses for 32-bit and 
>> 64-bit,
>> only the one needed by bash will be installed.
>>
>> If you change this and specify that your task RDEPENDS is "bash 
>> lib64-ncurses".
>>  Then the system will determine the dependencies based on both bash and the
>> 64-bit ncurses.  This will result in a system (likely 32-bit in this example)
>> that includes bash and lib64-ncurses and all of it's dependencies...
>>
>> The point is, if you explicitly tell the system to install something it is
>> expected to be installed.  If you don't the automatic resolution is used to
>> determine install components and not everything you want may be installed.
> 
> One would expect then if I did a:
> 
> MULTILIB_IMAGE_INSTALL += "lib64-perl"
> 
> I would be a 64bit perl and a slew of 64 bit libraries installed. I'm
> still trying to figure out why this is not happening on my particular
> build.

For everything I see, that should work.

In classes/image.bbclass, RDEPENDS is augmented by the contents of
IMAGE_INSTALL, LINGUAS_INSTALL, MULTILIB_IMAGE_INSTALL, and 
NORMAL_FEATURE_INSTALL.

The place to start looking for this is within the log.do_rootfs in the rootfs
directory you are working on.  You should see something that indicates it's
trying to install the "lib64-perl".  (in the case of RPM, it should eventually
rename it to "perl" -- but choose the 64-bit version.)

--Mark

> -M

_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to