All of lore.kernel.org
 help / color / mirror / Atom feed
* dnf fail in do_rootfs cannot find shared library
@ 2019-01-22 16:59 Måns Zigher
  2019-01-22 17:17 ` Alexander Kanavin
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Måns Zigher @ 2019-01-22 16:59 UTC (permalink / raw)
  To: Yocto discussion list

[-- Attachment #1: Type: text/plain, Size: 1213 bytes --]

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

[-- Attachment #2: Type: text/html, Size: 1657 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-22 16:59 dnf fail in do_rootfs cannot find shared library Måns Zigher
@ 2019-01-22 17:17 ` Alexander Kanavin
  2019-01-23  9:12 ` Einar Vading
  2019-01-23 11:02 ` Måns Zigher
  2 siblings, 0 replies; 11+ messages in thread
From: Alexander Kanavin @ 2019-01-22 17:17 UTC (permalink / raw)
  To: Måns Zigher; +Cc: Yocto discussion list

On Tue, 22 Jan 2019 at 17:59, Måns Zigher <mans.zigher@gmail.com> wrote:
> 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

Can you:
- show how you did the verification of the rpm?
- copy-paste the recipe

please?

Alex


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-22 16:59 dnf fail in do_rootfs cannot find shared library Måns Zigher
  2019-01-22 17:17 ` Alexander Kanavin
@ 2019-01-23  9:12 ` Einar Vading
  2019-01-23  9:50   ` Måns Zigher
  2019-01-23 11:02 ` Måns Zigher
  2 siblings, 1 reply; 11+ messages in thread
From: Einar Vading @ 2019-01-23  9:12 UTC (permalink / raw)
  To: Måns Zigher; +Cc: Yocto discussion list

I'm not sure this is your problem but if you don't version your
so-libs you could get this since the .so (without version) is not
shipped by default I think.

Try putting this in your recipe:
SOLIBS = ".so*"
FILES_SOLIBSDEV = ""
ERROR_QA_remove = "dev-so"

If that works I think the proper solution is to give your so-lib a version.

// Einar

On Tue, Jan 22, 2019 at 6:00 PM Måns Zigher <mans.zigher@gmail.com> wrote:
>
> 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@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-23  9:12 ` Einar Vading
@ 2019-01-23  9:50   ` Måns Zigher
  0 siblings, 0 replies; 11+ messages in thread
From: Måns Zigher @ 2019-01-23  9:50 UTC (permalink / raw)
  To: Einar Vading; +Cc: Yocto discussion list

[-- Attachment #1: Type: text/plain, Size: 2318 bytes --]

Hi,

I have verified that the so-lib file is part of the rpm package and I am
using INSANE_SKIP where I have added dev-so but I am willing to try
anything right now so thanks. The so-files is not something I have control
of it is something that is delivered to us.

BR
Måns Zigher

Den ons 23 jan. 2019 kl 10:12 skrev Einar Vading <yocto-ml@vading.se>:

> I'm not sure this is your problem but if you don't version your
> so-libs you could get this since the .so (without version) is not
> shipped by default I think.
>
> Try putting this in your recipe:
> SOLIBS = ".so*"
> FILES_SOLIBSDEV = ""
> ERROR_QA_remove = "dev-so"
>
> If that works I think the proper solution is to give your so-lib a version.
>
> // Einar
>
> On Tue, Jan 22, 2019 at 6:00 PM Måns Zigher <mans.zigher@gmail.com> wrote:
> >
> > 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@yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/yocto
>

[-- Attachment #2: Type: text/html, Size: 3272 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-22 16:59 dnf fail in do_rootfs cannot find shared library Måns Zigher
  2019-01-22 17:17 ` Alexander Kanavin
  2019-01-23  9:12 ` Einar Vading
@ 2019-01-23 11:02 ` Måns Zigher
  2019-01-23 11:07   ` Alexander Kanavin
  2019-01-23 11:33   ` Einar Vading
  2 siblings, 2 replies; 11+ messages in thread
From: Måns Zigher @ 2019-01-23 11:02 UTC (permalink / raw)
  To: Yocto discussion list

[-- Attachment #1: Type: text/plain, Size: 2424 bytes --]

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@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
>

[-- Attachment #2: Type: text/html, Size: 3525 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-23 11:02 ` Måns Zigher
@ 2019-01-23 11:07   ` Alexander Kanavin
  2019-01-23 12:00     ` Måns Zigher
  2019-01-23 11:33   ` Einar Vading
  1 sibling, 1 reply; 11+ messages in thread
From: Alexander Kanavin @ 2019-01-23 11:07 UTC (permalink / raw)
  To: Måns Zigher; +Cc: Yocto discussion list

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@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@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@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-23 11:02 ` Måns Zigher
  2019-01-23 11:07   ` Alexander Kanavin
@ 2019-01-23 11:33   ` Einar Vading
  2019-01-23 12:01     ` Måns Zigher
  1 sibling, 1 reply; 11+ messages in thread
From: Einar Vading @ 2019-01-23 11:33 UTC (permalink / raw)
  To: Måns Zigher; +Cc: Yocto discussion list

This is a longshot but I am currently investigating an issue we have
with a packagegroup.

I get a similar error but I can fix it by moving the package in my
RDEPENDS in the packagegroup.

If you move your libx_media up or down in the packagegroup, does it help?

For me i got:
    Error:
      Problem: conflicting requests
      - nothing provides libserved-utilsoversion needed by
packagegroup-base-1.0-r0.0.noarch

When I had:
    RDEPENDS_${PN} = "\
        libdomain-somelib \
        libsomeotherlib \
        served-util \
    "

But changing to:
    RDEPENDS_${PN} = "\
        libdomain-somelib \
        served-util \
        libsomeotherlib \
    "
Made it work.

If you're down to trying anything you might as well try this =)

// Einar

On Wed, Jan 23, 2019 at 12:03 PM Måns Zigher <mans.zigher@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@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@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-23 11:07   ` Alexander Kanavin
@ 2019-01-23 12:00     ` Måns Zigher
  0 siblings, 0 replies; 11+ messages in thread
From: Måns Zigher @ 2019-01-23 12:00 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: Yocto discussion list

[-- Attachment #1: Type: text/plain, Size: 3364 bytes --]

Hi,

I am sorry but I cannot locate the .spec file. I tried searching for .spec
in the tmp/work but I could not find any .spec file. Do I have to build
with a flag to get this .spec file?

BR
Måns Zigher

Den ons 23 jan. 2019 kl 12:07 skrev Alexander Kanavin <
alex.kanavin@gmail.com>:

> 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@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@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@yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/yocto
>

[-- Attachment #2: Type: text/html, Size: 4621 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-23 11:33   ` Einar Vading
@ 2019-01-23 12:01     ` Måns Zigher
  2019-01-23 13:19       ` Måns Zigher
  0 siblings, 1 reply; 11+ messages in thread
From: Måns Zigher @ 2019-01-23 12:01 UTC (permalink / raw)
  To: Einar Vading; +Cc: Yocto discussion list

[-- Attachment #1: Type: text/plain, Size: 3915 bytes --]

Hi,

Yes I noticed it so I tried that out but without any success but I will
investigate that also to see if change it can in another result.

BR
Måns Zigher

Den ons 23 jan. 2019 kl 12:33 skrev Einar Vading <yocto-ml@vading.se>:

> This is a longshot but I am currently investigating an issue we have
> with a packagegroup.
>
> I get a similar error but I can fix it by moving the package in my
> RDEPENDS in the packagegroup.
>
> If you move your libx_media up or down in the packagegroup, does it help?
>
> For me i got:
>     Error:
>       Problem: conflicting requests
>       - nothing provides libserved-utilsoversion needed by
> packagegroup-base-1.0-r0.0.noarch
>
> When I had:
>     RDEPENDS_${PN} = "\
>         libdomain-somelib \
>         libsomeotherlib \
>         served-util \
>     "
>
> But changing to:
>     RDEPENDS_${PN} = "\
>         libdomain-somelib \
>         served-util \
>         libsomeotherlib \
>     "
> Made it work.
>
> If you're down to trying anything you might as well try this =)
>
> // Einar
>
> On Wed, Jan 23, 2019 at 12:03 PM Måns Zigher <mans.zigher@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@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@yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/yocto
>

[-- Attachment #2: Type: text/html, Size: 5281 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
  2019-01-23 12:01     ` Måns Zigher
@ 2019-01-23 13:19       ` Måns Zigher
  0 siblings, 0 replies; 11+ messages in thread
From: Måns Zigher @ 2019-01-23 13:19 UTC (permalink / raw)
  To: Einar Vading; +Cc: Yocto discussion list

[-- Attachment #1: Type: text/plain, Size: 4934 bytes --]

Hi guys,

I found the issue and dnf is doing exactly what it should. The problem is
the shared library

readelf -d libx_media_1.0.so


Dynamic section at offset 0xf31c8 contains 40 entries:
  Tag        Type                         Name/Value
....
...
 0x000000000000000e (SONAME)             Library soname: [
libx_media_1.0_wtf.so]

So the SONAME of the file is actually set to libx_media_1.0_wtf.so but the
file is named libx_media_1.0.so and the executable that is part of the
package is linked against libx_media_1.0.so also.
I manage to figure this out when I was going
through /tmp/work/path/to/xmedia/1.0-r43/pkgdata/shlibs2 and I noticed that
in xmedia.lst file actually did not include the libx_media_1.0.so but
libx_media_1.0_wtf.so.
Thanks for your efforts.

BR
Måns Zigher

Den ons 23 jan. 2019 kl 13:01 skrev Måns Zigher <mans.zigher@gmail.com>:

> Hi,
>
> Yes I noticed it so I tried that out but without any success but I will
> investigate that also to see if change it can in another result.
>
> BR
> Måns Zigher
>
> Den ons 23 jan. 2019 kl 12:33 skrev Einar Vading <yocto-ml@vading.se>:
>
>> This is a longshot but I am currently investigating an issue we have
>> with a packagegroup.
>>
>> I get a similar error but I can fix it by moving the package in my
>> RDEPENDS in the packagegroup.
>>
>> If you move your libx_media up or down in the packagegroup, does it help?
>>
>> For me i got:
>>     Error:
>>       Problem: conflicting requests
>>       - nothing provides libserved-utilsoversion needed by
>> packagegroup-base-1.0-r0.0.noarch
>>
>> When I had:
>>     RDEPENDS_${PN} = "\
>>         libdomain-somelib \
>>         libsomeotherlib \
>>         served-util \
>>     "
>>
>> But changing to:
>>     RDEPENDS_${PN} = "\
>>         libdomain-somelib \
>>         served-util \
>>         libsomeotherlib \
>>     "
>> Made it work.
>>
>> If you're down to trying anything you might as well try this =)
>>
>> // Einar
>>
>> On Wed, Jan 23, 2019 at 12:03 PM Måns Zigher <mans.zigher@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@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@yoctoproject.org
>> > https://lists.yoctoproject.org/listinfo/yocto
>>
>

[-- Attachment #2: Type: text/html, Size: 7311 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: dnf fail in do_rootfs cannot find shared library
@ 2019-06-23  8:46 Piotr Betlej
  0 siblings, 0 replies; 11+ messages in thread
From: Piotr Betlej @ 2019-06-23  8:46 UTC (permalink / raw)
  To: yocto

[-- Attachment #1: Type: text/plain, Size: 484 bytes --]

Hi all,

this happens if one compiles a plain makefile project, since there is no
-Wl,-soname,my_library.so.1 linker option added automatically as it is in
case of using autotools or cmake for recipe.
DNF checks content of the so file and if it does not have SONAME inside, it
refuses to continue rootfs processing displaying confusing message "nothing
provides my_lib.so ...". There should be a better warning message or some
clean policy for it.

Regards

Piotr Betlej

[-- Attachment #2: Type: text/html, Size: 604 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2019-06-23  8:47 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-22 16:59 dnf fail in do_rootfs cannot find shared library Måns Zigher
2019-01-22 17:17 ` Alexander Kanavin
2019-01-23  9:12 ` Einar Vading
2019-01-23  9:50   ` Måns Zigher
2019-01-23 11:02 ` Måns Zigher
2019-01-23 11:07   ` Alexander Kanavin
2019-01-23 12:00     ` Måns Zigher
2019-01-23 11:33   ` Einar Vading
2019-01-23 12:01     ` Måns Zigher
2019-01-23 13:19       ` Måns Zigher
2019-06-23  8:46 Piotr Betlej

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.