[yocto] dnf fail in do_rootfs cannot find shared library

Alexander Kanavin alex.kanavin at gmail.com
Wed Jan 23 03:07:12 PST 2019


One more thing: can you provide the .spec file that is generated
during build and used to create .rpm packages? You will find it under
tmp/work/<target_arch>/x_media/

Please try not to edit anything out of it.

Alex

On Wed, 23 Jan 2019 at 12:02, Måns Zigher <mans.zigher at gmail.com> wrote:
>
> I have toke the rpm file that was produced. I found the file under the build directory under tmp/work/imx8mq-strix-linux/x_media/1.0-r44/deploy-rpms/imx8mq/temp/x_media-1.0-r44.imx8mq.rpm. I used the following commands
> 7z x x_media-1.0-r44.imx8mq.rpm
> 7z x x_media-1.0-r44.imx8mq.cpio
>
> The result from this gave me the file tree where I then could run
> file usr/lib/libx_media_1.0.so
> usr/lib/libx_media_1.0.so: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, stripped
>
> So I believe that I have concluded that the rpm include the file that dnf is complaining about. I don't understand why dnf thinks that this dependency is not meet when it clearly is part of the package. I have added verbose flags to the dnf call but dose not give any more information.
> I am not sure how I can proceed to find out what I have done wrong. The recipe is a bit of a freak of nature because the binaries that I am packaging is actually built using another toolchain but it is for the same arch can dnf detect that?
>
> BR
> Måns Zigher
>
> Den tis 22 jan. 2019 kl 17:59 skrev Måns Zigher <mans.zigher at gmail.com>:
>>
>> Hi,
>>
>> I am struggling with a recipe which more or less just downloads binaries and creating a package. We have previously been using ipkg but now we have switched to rpm in our builds. One of the binaries in the packages is a library let's call it libx_media_1.0.so. This library is part of the package that the recipe is producing. The library is placed under /usr/lib/. When building the image I am getting the following error
>>
>> ERROR: base-image-1.0-r0 do_rootfs: Could not invoke dnf. Command
>> .....
>> ...
>> Error:
>>  Problem: package packagegroup-x-media-1.0-r11.noarch requires x_media, but none of the providers can be installed
>>   - conflicting requests
>>   - nothing provides libx_media_1.0.so()(64bit) needed by x_media-1.0-r44.imx8mq
>>
>> ERROR: base-image-1.0-r0 do_rootfs: Function failed: do_rootfs
>>
>> Here is the output from running the command file on the library
>>
>> usr/lib/libx_media_1.0.so: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, stripped
>>
>> I have also verified that the library is part of the produced rpm so that is not the issue.
>>
>> Dose anyone have any suggestion on how to debug this problem? Because I am out of ideas
>>
>> BR
>> Måns Zigher
>
> --
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto


More information about the yocto mailing list