[oe] [PATCH][meta-oe] crash: fix do_compile relocation error

Changqing Li changqing.li at windriver.com
Fri Jul 6 06:12:37 UTC 2018



On 07/04/2018 01:15 PM, Khem Raj wrote:
>
>
> On 7/3/18 6:48 PM, Changqing Li wrote:
>>
>>
>> On 07/03/2018 12:42 AM, Khem Raj wrote:
>>> On Mon, Jul 2, 2018 at 12:08 AM Changqing Li 
>>> <changqing.li at windriver.com> wrote:
>>>> On 07/02/2018 02:09 PM, Khem Raj wrote:
>>>>> On Sun, Jul 1, 2018 at 7:31 PM Changqing Li 
>>>>> <changqing.li at windriver.com> wrote:
>>>>>> error info:
>>>>>>
>>>>>> id: relocation error: /lib/x86_64-linux-gnu/libnss_nis.so.2:
>>>>>> symbol _nsl_default_nss version GLIBC_PRIVATE not defined in
>>>>>> file libnsl.so.1 with link time reference
>>>>>>
>>>>>> Recent glibc change removed libnss-nis module from glibc and
>>>>>> a new recipe libnss-nis.bb was added. After this change,
>>>>>> we need to include native libnss_nis in crash. otherwise,
>>>>>> with "nis" in /etc/nssswitch.conf, we will met above error.
>>>>>>
>>>>>> Signed-off-by: Changqing Li <changqing.li at windriver.com>
>>>>>> ---
>>>>>>    meta-oe/recipes-kernel/crash/crash_7.2.0.bb | 1 +
>>>>>>    1 file changed, 1 insertion(+)
>>>>>>
>>>>>> diff --git a/meta-oe/recipes-kernel/crash/crash_7.2.0.bb 
>>>>>> b/meta-oe/recipes-kernel/crash/crash_7.2.0.bb
>>>>>> index 440a69d..09fe50d 100644
>>>>>> --- a/meta-oe/recipes-kernel/crash/crash_7.2.0.bb
>>>>>> +++ b/meta-oe/recipes-kernel/crash/crash_7.2.0.bb
>>>>>> @@ -11,6 +11,7 @@ LICENSE = "GPLv3"
>>>>>>    LIC_FILES_CHKSUM = 
>>>>>> "file://COPYING3;md5=d32239bcb673463ab874e80d47fae504"
>>>>>>
>>>>>>    DEPENDS = "zlib readline coreutils-native"
>>>>>> +DEPENDS_append_libc-glibc = " libnss-nis-native"
>>>>> A native dependency which is specific to a target libc seems not
>>>>> right. It should depend on
>>>>> build host libc which in this case is always glibc so please drop 
>>>>> the override.
>>>> Hi,  according  to below content of recipe libnss-nis,  only for 
>>>> glibc,
>>>> we will DEPNDS
>>>> libnss-nis-native, so I add this override.
>>>>
>>>> # We will skip parsing this packagegeoup for non-glibc systems
>>>> #
>>>> python __anonymous () {
>>>>       if d.getVar('TCLIBC') != "glibc":
>>>>           raise bb.parse.SkipRecipe("incompatible with %s C library" %
>>>>                                      d.getVar('TCLIBC'))
>>> may be this can be made to exclude non target recipes.
>>>
>>
>> I don't quite get your mean, can you explain more? Thanks.
>
> fact that we are adding a dependency on a native package for just 
> glibc based images is what I was asking about. libc-glibc is a target 
> specific override and therefore this makes it such that it is only 
> needed when target is glibc which to be sounds wrong, since other 
> libcs should have same dependency needs as well.
>
> Guessing from your error message it seems somewhere crash build is 
> depending upon id program and this id program is coming from 
> coreutils-native, which seems to depend on this library so this 
> dependency really belongs there, it seems to me that coreutils-native 
> should depend upon
> libnss-nis-native

Thanks. I will move depend of libnss-nis-native to coreutils-native, and 
resend to patch.




More information about the Openembedded-devel mailing list