All of lore.kernel.org
 help / color / mirror / Atom feed
* Modified GENIVI Cannelloni recipe with strange side effects
@ 2020-02-14 10:27 Zoran
  2020-02-14 10:44 ` [yocto] " Laurent Gauthier
  0 siblings, 1 reply; 7+ messages in thread
From: Zoran @ 2020-02-14 10:27 UTC (permalink / raw)
  To: yocto

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

Hello List,

I am trying to solve very interesting ERROR I am getting with slightly
modified GENIVI Canneloni recipe:
https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb

If I take the recipe as is, everything works fine, with:
## SRCREV = "${AUTOREV}"
SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"

Everything works fine, but if I swap the static hash with auto latest hash
(SRCREV = "${AUTOREV}":
SRCREV = "${AUTOREV}"
## SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"

I am getting these ERRORS, which seems to me very strange?!
_______

Sstate summary: Wanted 11 Found 6 Missed 5 Current 1398 (54% match, 99%
complete)
NOTE: Executing Tasks
NOTE: Setscene tasks completed
ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: package cannelloni
contains bad RPATH
/home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build:
in file
/home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni
[rpaths]
ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: /usr/bin/cannelloni
contained in package cannelloni requires libcannelloni-common.so.0, but no
providers found in RDEPENDS_cannelloni? [file-rdeps]
ERROR: cannelloni-1.0-r0 do_package_qa: QA run found fatal errors. Please
consider fixing them.
ERROR: Logfile of failure stored in:
/home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/temp/log.do_package_qa.255490
ERROR: Task
(/home/user/projects2/beaglebone-black/bbb-yocto/meta-socketcan/recipes-can/cannelloni/cannelloni.bb:do_package_qa)
failed with exit code '1'
NOTE: Tasks Summary: Attempted 3791 tasks of which 3788 didn't need to be
rerun and 1 failed.
_______

Any advise how to make GENIVI Cannelloni recipe to work with: SRCREV =
"${AUTOREV}" ???

Thank you,
Zoran

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

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

* Re: [yocto] Modified GENIVI Cannelloni recipe with strange side effects
  2020-02-14 10:27 Modified GENIVI Cannelloni recipe with strange side effects Zoran
@ 2020-02-14 10:44 ` Laurent Gauthier
  2020-02-14 11:43   ` Zoran
  0 siblings, 1 reply; 7+ messages in thread
From: Laurent Gauthier @ 2020-02-14 10:44 UTC (permalink / raw)
  To: Zoran; +Cc: yocto

Hi Zoran,

The issue seems to be that the executable /usr/bin/cannelloni has a
reference to a shared library (libcannelloni-common.so.0) for which
the Yocto build system is not able to determine automatically which
package provides it.

Based on the name I would assume that this package should be created
by the same recipe that produces this executable (one recipe produces
multiple packages).

The most probable reason for this is that the new version of the
package you are trying to build does not install the "missing" shared
library properly. But here are some steps you could follow to try to
determine the stage of build/install/package where the shared library
goes missing.

To debug this I would suggest that you check that this
"libcannelloni-common.so.0" shared library is present in several
directories.

First in the build directory:

* /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build

If it is not there that would be very surprising. I will assume that
it is present. Let us know if it is not.

Then the next location to check for this shared library is the following:

* /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package

If the file is not there, then it means that the recipe did not
"install" it (as this directory is populated by do_install).

If the file is there then you can check if it is correctly assigned in
a package by determining if it is also found in:

* /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split

If the file is not there, then it means that the recipe did not
"package" it properly (as this directory is populated by do_package).
You should review the recipe for any anomaly in assigning installed
files to individual packages.

If the file is there then you probably should add the package that
contains the shared library in the RDEPENDS for the "cannelloni"
package.

The name of the package containing the shared library is name of the
xxx first-level directory "packages-split/xxx".

Not sure if that will solve your issue, but hopefully that will help.

Kind Regards, Laurent.

On Fri, Feb 14, 2020 at 11:27 AM Zoran <zoran.stojsavljevic@gmail.com> wrote:
>
> Hello List,
>
> I am trying to solve very interesting ERROR I am getting with slightly modified GENIVI Canneloni recipe:
> https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
>
> If I take the recipe as is, everything works fine, with:
> ## SRCREV = "${AUTOREV}"
> SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
>
> Everything works fine, but if I swap the static hash with auto latest hash (SRCREV = "${AUTOREV}":
> SRCREV = "${AUTOREV}"
> ## SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
>
> I am getting these ERRORS, which seems to me very strange?!
> _______
>
> Sstate summary: Wanted 11 Found 6 Missed 5 Current 1398 (54% match, 99% complete)
> NOTE: Executing Tasks
> NOTE: Setscene tasks completed
> ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: package cannelloni contains bad RPATH /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build: in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni [rpaths]
> ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: /usr/bin/cannelloni contained in package cannelloni requires libcannelloni-common.so.0, but no providers found in RDEPENDS_cannelloni? [file-rdeps]
> ERROR: cannelloni-1.0-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
> ERROR: Logfile of failure stored in: /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/temp/log.do_package_qa.255490
> ERROR: Task (/home/user/projects2/beaglebone-black/bbb-yocto/meta-socketcan/recipes-can/cannelloni/cannelloni.bb:do_package_qa) failed with exit code '1'
> NOTE: Tasks Summary: Attempted 3791 tasks of which 3788 didn't need to be rerun and 1 failed.
> _______
>
> Any advise how to make GENIVI Cannelloni recipe to work with: SRCREV = "${AUTOREV}" ???
>
> Thank you,
> Zoran
>
> 



-- 
Laurent Gauthier
Phone: +33 630 483 429
http://soccasys.com

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

* Re: [yocto] Modified GENIVI Cannelloni recipe with strange side effects
  2020-02-14 10:44 ` [yocto] " Laurent Gauthier
@ 2020-02-14 11:43   ` Zoran
  2020-02-14 13:16     ` Laurent Gauthier
  0 siblings, 1 reply; 7+ messages in thread
From: Zoran @ 2020-02-14 11:43 UTC (permalink / raw)
  To: Laurent Gauthier; +Cc: yocto

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

Hello Laurent,

Many thanks to you for the help. :-)

I did some modifications, and now I have all the elements in there/in place:

[user@fedora31-ssd cannelloni]$ cd ../../../build/tmp
[user@fedora31-ssd tmp]$ find . -name libcannelloni*
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/image/usr/lib/libcannelloni-common.so
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/sysroot-destdir/usr/lib/libcannelloni-common.so
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/.debug/libcannelloni-common.so
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/libcannelloni-common.so
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/lib/libcannelloni-common.so
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni-dbg/usr/lib/.debug/libcannelloni-common.so
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0.0.1
./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so
./sysroots-components/cortexa8hf-neon/cannelloni/usr/lib/libcannelloni-common.so

I miss the very end of your thoughts. Namely:

> The name of the package containing the shared library is name of the
> xxx first-level directory "packages-split/xxx".

So, how should I write the RDEPENDS command?

Something as: RDEPENDS_${PN} = "???"

What should I put on the right side of the equation (according to the above
traces)?

Thank you,
Zoran
_______

On Fri, Feb 14, 2020 at 11:49 AM Laurent Gauthier <
laurent.gauthier@soccasys.com> wrote:

> Hi Zoran,
>
> The issue seems to be that the executable /usr/bin/cannelloni has a
> reference to a shared library (libcannelloni-common.so.0) for which
> the Yocto build system is not able to determine automatically which
> package provides it.
>
> Based on the name I would assume that this package should be created
> by the same recipe that produces this executable (one recipe produces
> multiple packages).
>
> The most probable reason for this is that the new version of the
> package you are trying to build does not install the "missing" shared
> library properly. But here are some steps you could follow to try to
> determine the stage of build/install/package where the shared library
> goes missing.
>
> To debug this I would suggest that you check that this
> "libcannelloni-common.so.0" shared library is present in several
> directories.
>
> First in the build directory:
>
> *
> /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build
>
> If it is not there that would be very surprising. I will assume that
> it is present. Let us know if it is not.
>
> Then the next location to check for this shared library is the following:
>
> *
> /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package
>
> If the file is not there, then it means that the recipe did not
> "install" it (as this directory is populated by do_install).
>
> If the file is there then you can check if it is correctly assigned in
> a package by determining if it is also found in:
>
> *
> /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split
>
> If the file is not there, then it means that the recipe did not
> "package" it properly (as this directory is populated by do_package).
> You should review the recipe for any anomaly in assigning installed
> files to individual packages.
>
> If the file is there then you probably should add the package that
> contains the shared library in the RDEPENDS for the "cannelloni"
> package.
>
> The name of the package containing the shared library is name of the
> xxx first-level directory "packages-split/xxx".
>
> Not sure if that will solve your issue, but hopefully that will help.
>
> Kind Regards, Laurent.
>
> On Fri, Feb 14, 2020 at 11:27 AM Zoran <zoran.stojsavljevic@gmail.com>
> wrote:
> >
> > Hello List,
> >
> > I am trying to solve very interesting ERROR I am getting with slightly
> modified GENIVI Canneloni recipe:
> >
> https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
> >
> > If I take the recipe as is, everything works fine, with:
> > ## SRCREV = "${AUTOREV}"
> > SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> >
> > Everything works fine, but if I swap the static hash with auto latest
> hash (SRCREV = "${AUTOREV}":
> > SRCREV = "${AUTOREV}"
> > ## SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> >
> > I am getting these ERRORS, which seems to me very strange?!
> > _______
> >
> > Sstate summary: Wanted 11 Found 6 Missed 5 Current 1398 (54% match, 99%
> complete)
> > NOTE: Executing Tasks
> > NOTE: Setscene tasks completed
> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: package cannelloni
> contains bad RPATH
> /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build:
> in file
> /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni
> [rpaths]
> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: /usr/bin/cannelloni
> contained in package cannelloni requires libcannelloni-common.so.0, but no
> providers found in RDEPENDS_cannelloni? [file-rdeps]
> > ERROR: cannelloni-1.0-r0 do_package_qa: QA run found fatal errors.
> Please consider fixing them.
> > ERROR: Logfile of failure stored in:
> /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/temp/log.do_package_qa.255490
> > ERROR: Task
> (/home/user/projects2/beaglebone-black/bbb-yocto/meta-socketcan/recipes-can/cannelloni/cannelloni.bb:do_package_qa)
> failed with exit code '1'
> > NOTE: Tasks Summary: Attempted 3791 tasks of which 3788 didn't need to
> be rerun and 1 failed.
> > _______
> >
> > Any advise how to make GENIVI Cannelloni recipe to work with: SRCREV =
> "${AUTOREV}" ???
> >
> > Thank you,
> > Zoran
> >
> > 
>
>
>
> --
> Laurent Gauthier
> Phone: +33 630 483 429
> http://soccasys.com
>

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

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

* Re: [yocto] Modified GENIVI Cannelloni recipe with strange side effects
  2020-02-14 11:43   ` Zoran
@ 2020-02-14 13:16     ` Laurent Gauthier
  2020-02-17  7:01       ` Zoran
  0 siblings, 1 reply; 7+ messages in thread
From: Laurent Gauthier @ 2020-02-14 13:16 UTC (permalink / raw)
  To: Zoran Stojsavljevic; +Cc: yocto

Hi Zoran,

You are almost there! I can feel it... :-)

The issue I see is that the following files have been build but NOTinstalled:

* libcannelloni-common.so.0
* libcannelloni-common.so.0.0.1

If you make sure that they are installed that should fix your issue.

Based on the info you provided no RDEPENDS seems to be required as it
all appears that everything is in one package named "cannelloni",
rather than a package for the main executable and then packages for
libraries.

Kind regards, Laurent.

On Fri, Feb 14, 2020 at 12:43 PM Zoran Stojsavljevic
<zoran.stojsavljevic@gmail.com> wrote:
>
> Hello Laurent,
>
> Many thanks to you for the help. :-)
>
> I did some modifications, and now I have all the elements in there/in place:
>
> [user@fedora31-ssd cannelloni]$ cd ../../../build/tmp
> [user@fedora31-ssd tmp]$ find . -name libcannelloni*
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/image/usr/lib/libcannelloni-common.so
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/sysroot-destdir/usr/lib/libcannelloni-common.so
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/.debug/libcannelloni-common.so
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/libcannelloni-common.so
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/lib/libcannelloni-common.so
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni-dbg/usr/lib/.debug/libcannelloni-common.so
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0.0.1
> ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so
> ./sysroots-components/cortexa8hf-neon/cannelloni/usr/lib/libcannelloni-common.so
>
> I miss the very end of your thoughts. Namely:
>
> > The name of the package containing the shared library is name of the
> > xxx first-level directory "packages-split/xxx".
>
> So, how should I write the RDEPENDS command?
>
> Something as: RDEPENDS_${PN} = "???"
>
> What should I put on the right side of the equation (according to the above traces)?
>
> Thank you,
> Zoran
> _______
>
> On Fri, Feb 14, 2020 at 11:49 AM Laurent Gauthier <laurent.gauthier@soccasys.com> wrote:
>>
>> Hi Zoran,
>>
>> The issue seems to be that the executable /usr/bin/cannelloni has a
>> reference to a shared library (libcannelloni-common.so.0) for which
>> the Yocto build system is not able to determine automatically which
>> package provides it.
>>
>> Based on the name I would assume that this package should be created
>> by the same recipe that produces this executable (one recipe produces
>> multiple packages).
>>
>> The most probable reason for this is that the new version of the
>> package you are trying to build does not install the "missing" shared
>> library properly. But here are some steps you could follow to try to
>> determine the stage of build/install/package where the shared library
>> goes missing.
>>
>> To debug this I would suggest that you check that this
>> "libcannelloni-common.so.0" shared library is present in several
>> directories.
>>
>> First in the build directory:
>>
>> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build
>>
>> If it is not there that would be very surprising. I will assume that
>> it is present. Let us know if it is not.
>>
>> Then the next location to check for this shared library is the following:
>>
>> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package
>>
>> If the file is not there, then it means that the recipe did not
>> "install" it (as this directory is populated by do_install).
>>
>> If the file is there then you can check if it is correctly assigned in
>> a package by determining if it is also found in:
>>
>> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split
>>
>> If the file is not there, then it means that the recipe did not
>> "package" it properly (as this directory is populated by do_package).
>> You should review the recipe for any anomaly in assigning installed
>> files to individual packages.
>>
>> If the file is there then you probably should add the package that
>> contains the shared library in the RDEPENDS for the "cannelloni"
>> package.
>>
>> The name of the package containing the shared library is name of the
>> xxx first-level directory "packages-split/xxx".
>>
>> Not sure if that will solve your issue, but hopefully that will help.
>>
>> Kind Regards, Laurent.
>>
>> On Fri, Feb 14, 2020 at 11:27 AM Zoran <zoran.stojsavljevic@gmail.com> wrote:
>> >
>> > Hello List,
>> >
>> > I am trying to solve very interesting ERROR I am getting with slightly modified GENIVI Canneloni recipe:
>> > https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
>> >
>> > If I take the recipe as is, everything works fine, with:
>> > ## SRCREV = "${AUTOREV}"
>> > SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
>> >
>> > Everything works fine, but if I swap the static hash with auto latest hash (SRCREV = "${AUTOREV}":
>> > SRCREV = "${AUTOREV}"
>> > ## SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
>> >
>> > I am getting these ERRORS, which seems to me very strange?!
>> > _______
>> >
>> > Sstate summary: Wanted 11 Found 6 Missed 5 Current 1398 (54% match, 99% complete)
>> > NOTE: Executing Tasks
>> > NOTE: Setscene tasks completed
>> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: package cannelloni contains bad RPATH /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build: in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni [rpaths]
>> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: /usr/bin/cannelloni contained in package cannelloni requires libcannelloni-common.so.0, but no providers found in RDEPENDS_cannelloni? [file-rdeps]
>> > ERROR: cannelloni-1.0-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
>> > ERROR: Logfile of failure stored in: /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/temp/log.do_package_qa.255490
>> > ERROR: Task (/home/user/projects2/beaglebone-black/bbb-yocto/meta-socketcan/recipes-can/cannelloni/cannelloni.bb:do_package_qa) failed with exit code '1'
>> > NOTE: Tasks Summary: Attempted 3791 tasks of which 3788 didn't need to be rerun and 1 failed.
>> > _______
>> >
>> > Any advise how to make GENIVI Cannelloni recipe to work with: SRCREV = "${AUTOREV}" ???
>> >
>> > Thank you,
>> > Zoran
>> >
>> > 
>>
>>
>>
>> --
>> Laurent Gauthier
>> Phone: +33 630 483 429
>> http://soccasys.com



-- 
Laurent Gauthier
Phone: +33 630 483 429
http://soccasys.com

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

* Re: [yocto] Modified GENIVI Cannelloni recipe with strange side effects
  2020-02-14 13:16     ` Laurent Gauthier
@ 2020-02-17  7:01       ` Zoran
  2020-02-19 18:05         ` Laurent Gauthier
  0 siblings, 1 reply; 7+ messages in thread
From: Zoran @ 2020-02-17  7:01 UTC (permalink / raw)
  To: Laurent Gauthier; +Cc: yocto

> The issue I see is that the following files have been build but NOT installed:
>
> * libcannelloni-common.so.0
> * libcannelloni-common.so.0.0.1

Not quite... The solution is outlined here (in function do_install):
+       ## ERROR: QA Issue: package cannelloni contains bad RPATH
+       ## quick fix is in a do_install or do_install_append do
+       chrpath -d ${D}${bindir}/cannelloni

https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb_GENIVI

I admit, your first email has shaken my head, so I can see things much
more clear. :-)

My best guess, this solution is just a workaround (not the final one),
since I have in ${D} the following:

cannelloni-1.0: package cannelloni contains bad RPATH
/home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build:
in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni
[rpaths]

So, since my limited knowledge about bitbake build systems ends here,
somebody from YOCTO primes (potentially Khem Raj, Ross Burton, maybe
even Richard Purdie) should look more closely into this issue
(apologies for my unsolicited suggestions).

Laurent,

Once again, thank you for unselfish help,
Zoran
_______


On Fri, Feb 14, 2020 at 2:20 PM Laurent Gauthier
<laurent.gauthier@soccasys.com> wrote:
>
> Hi Zoran,
>
> You are almost there! I can feel it... :-)
>
> The issue I see is that the following files have been build but NOTinstalled:
>
> * libcannelloni-common.so.0
> * libcannelloni-common.so.0.0.1
>
> If you make sure that they are installed that should fix your issue.
>
> Based on the info you provided no RDEPENDS seems to be required as it
> all appears that everything is in one package named "cannelloni",
> rather than a package for the main executable and then packages for
> libraries.
>
> Kind regards, Laurent.
>
> On Fri, Feb 14, 2020 at 12:43 PM Zoran Stojsavljevic
> <zoran.stojsavljevic@gmail.com> wrote:
> >
> > Hello Laurent,
> >
> > Many thanks to you for the help. :-)
> >
> > I did some modifications, and now I have all the elements in there/in place:
> >
> > [user@fedora31-ssd cannelloni]$ cd ../../../build/tmp
> > [user@fedora31-ssd tmp]$ find . -name libcannelloni*
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/image/usr/lib/libcannelloni-common.so
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/sysroot-destdir/usr/lib/libcannelloni-common.so
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/.debug/libcannelloni-common.so
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/libcannelloni-common.so
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/lib/libcannelloni-common.so
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni-dbg/usr/lib/.debug/libcannelloni-common.so
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0.0.1
> > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so
> > ./sysroots-components/cortexa8hf-neon/cannelloni/usr/lib/libcannelloni-common.so
> >
> > I miss the very end of your thoughts. Namely:
> >
> > > The name of the package containing the shared library is name of the
> > > xxx first-level directory "packages-split/xxx".
> >
> > So, how should I write the RDEPENDS command?
> >
> > Something as: RDEPENDS_${PN} = "???"
> >
> > What should I put on the right side of the equation (according to the above traces)?
> >
> > Thank you,
> > Zoran
> > _______
> >
> > On Fri, Feb 14, 2020 at 11:49 AM Laurent Gauthier <laurent.gauthier@soccasys.com> wrote:
> >>
> >> Hi Zoran,
> >>
> >> The issue seems to be that the executable /usr/bin/cannelloni has a
> >> reference to a shared library (libcannelloni-common.so.0) for which
> >> the Yocto build system is not able to determine automatically which
> >> package provides it.
> >>
> >> Based on the name I would assume that this package should be created
> >> by the same recipe that produces this executable (one recipe produces
> >> multiple packages).
> >>
> >> The most probable reason for this is that the new version of the
> >> package you are trying to build does not install the "missing" shared
> >> library properly. But here are some steps you could follow to try to
> >> determine the stage of build/install/package where the shared library
> >> goes missing.
> >>
> >> To debug this I would suggest that you check that this
> >> "libcannelloni-common.so.0" shared library is present in several
> >> directories.
> >>
> >> First in the build directory:
> >>
> >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build
> >>
> >> If it is not there that would be very surprising. I will assume that
> >> it is present. Let us know if it is not.
> >>
> >> Then the next location to check for this shared library is the following:
> >>
> >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package
> >>
> >> If the file is not there, then it means that the recipe did not
> >> "install" it (as this directory is populated by do_install).
> >>
> >> If the file is there then you can check if it is correctly assigned in
> >> a package by determining if it is also found in:
> >>
> >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split
> >>
> >> If the file is not there, then it means that the recipe did not
> >> "package" it properly (as this directory is populated by do_package).
> >> You should review the recipe for any anomaly in assigning installed
> >> files to individual packages.
> >>
> >> If the file is there then you probably should add the package that
> >> contains the shared library in the RDEPENDS for the "cannelloni"
> >> package.
> >>
> >> The name of the package containing the shared library is name of the
> >> xxx first-level directory "packages-split/xxx".
> >>
> >> Not sure if that will solve your issue, but hopefully that will help.
> >>
> >> Kind Regards, Laurent.
> >>
> >> On Fri, Feb 14, 2020 at 11:27 AM Zoran <zoran.stojsavljevic@gmail.com> wrote:
> >> >
> >> > Hello List,
> >> >
> >> > I am trying to solve very interesting ERROR I am getting with slightly modified GENIVI Canneloni recipe:
> >> > https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
> >> >
> >> > If I take the recipe as is, everything works fine, with:
> >> > ## SRCREV = "${AUTOREV}"
> >> > SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> >> >
> >> > Everything works fine, but if I swap the static hash with auto latest hash (SRCREV = "${AUTOREV}":
> >> > SRCREV = "${AUTOREV}"
> >> > ## SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> >> >
> >> > I am getting these ERRORS, which seems to me very strange?!
> >> > _______
> >> >
> >> > Sstate summary: Wanted 11 Found 6 Missed 5 Current 1398 (54% match, 99% complete)
> >> > NOTE: Executing Tasks
> >> > NOTE: Setscene tasks completed
> >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: package cannelloni contains bad RPATH /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build: in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni [rpaths]
> >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: /usr/bin/cannelloni contained in package cannelloni requires libcannelloni-common.so.0, but no providers found in RDEPENDS_cannelloni? [file-rdeps]
> >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
> >> > ERROR: Logfile of failure stored in: /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/temp/log.do_package_qa.255490
> >> > ERROR: Task (/home/user/projects2/beaglebone-black/bbb-yocto/meta-socketcan/recipes-can/cannelloni/cannelloni.bb:do_package_qa) failed with exit code '1'
> >> > NOTE: Tasks Summary: Attempted 3791 tasks of which 3788 didn't need to be rerun and 1 failed.
> >> > _______
> >> >
> >> > Any advise how to make GENIVI Cannelloni recipe to work with: SRCREV = "${AUTOREV}" ???
> >> >
> >> > Thank you,
> >> > Zoran
> >> >
> >> > 
> >>
> >>
> >>
> >> --
> >> Laurent Gauthier
> >> Phone: +33 630 483 429
> >> http://soccasys.com
>
>
>
> --
> Laurent Gauthier
> Phone: +33 630 483 429
> http://soccasys.com

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

* Re: [yocto] Modified GENIVI Cannelloni recipe with strange side effects
  2020-02-17  7:01       ` Zoran
@ 2020-02-19 18:05         ` Laurent Gauthier
  2020-02-20  5:30           ` Zoran
  0 siblings, 1 reply; 7+ messages in thread
From: Laurent Gauthier @ 2020-02-19 18:05 UTC (permalink / raw)
  To: Zoran Stojsavljevic; +Cc: yocto

Hi Zoran,

I just saw your reply now.

I think that you might want to remove the INHIBIT_SYSROOT_STRIP and
other INHIBIT_* options from your recipe.

For reference a message from Khem warning that this option should be
used sparingly:

* https://www.yoctoproject.org/pipermail/yocto/2019-March/044415.html

My best guess is that the use of this option is directly linked to
chrpath being needed.

As this recipe is being built with a rather clean looking
CMakeLists.txt none of these weird options are needed.

Kind regards, Laurent.

On Mon, Feb 17, 2020 at 8:01 AM Zoran Stojsavljevic
<zoran.stojsavljevic@gmail.com> wrote:
>
> > The issue I see is that the following files have been build but NOT installed:
> >
> > * libcannelloni-common.so.0
> > * libcannelloni-common.so.0.0.1
>
> Not quite... The solution is outlined here (in function do_install):
> +       ## ERROR: QA Issue: package cannelloni contains bad RPATH
> +       ## quick fix is in a do_install or do_install_append do
> +       chrpath -d ${D}${bindir}/cannelloni
>
> https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
> https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb_GENIVI
>
> I admit, your first email has shaken my head, so I can see things much
> more clear. :-)
>
> My best guess, this solution is just a workaround (not the final one),
> since I have in ${D} the following:
>
> cannelloni-1.0: package cannelloni contains bad RPATH
> /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build:
> in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni
> [rpaths]
>
> So, since my limited knowledge about bitbake build systems ends here,
> somebody from YOCTO primes (potentially Khem Raj, Ross Burton, maybe
> even Richard Purdie) should look more closely into this issue
> (apologies for my unsolicited suggestions).
>
> Laurent,
>
> Once again, thank you for unselfish help,
> Zoran
> _______
>
>
> On Fri, Feb 14, 2020 at 2:20 PM Laurent Gauthier
> <laurent.gauthier@soccasys.com> wrote:
> >
> > Hi Zoran,
> >
> > You are almost there! I can feel it... :-)
> >
> > The issue I see is that the following files have been build but NOTinstalled:
> >
> > * libcannelloni-common.so.0
> > * libcannelloni-common.so.0.0.1
> >
> > If you make sure that they are installed that should fix your issue.
> >
> > Based on the info you provided no RDEPENDS seems to be required as it
> > all appears that everything is in one package named "cannelloni",
> > rather than a package for the main executable and then packages for
> > libraries.
> >
> > Kind regards, Laurent.
> >
> > On Fri, Feb 14, 2020 at 12:43 PM Zoran Stojsavljevic
> > <zoran.stojsavljevic@gmail.com> wrote:
> > >
> > > Hello Laurent,
> > >
> > > Many thanks to you for the help. :-)
> > >
> > > I did some modifications, and now I have all the elements in there/in place:
> > >
> > > [user@fedora31-ssd cannelloni]$ cd ../../../build/tmp
> > > [user@fedora31-ssd tmp]$ find . -name libcannelloni*
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/image/usr/lib/libcannelloni-common.so
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/sysroot-destdir/usr/lib/libcannelloni-common.so
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/.debug/libcannelloni-common.so
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/libcannelloni-common.so
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/lib/libcannelloni-common.so
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni-dbg/usr/lib/.debug/libcannelloni-common.so
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0.0.1
> > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so
> > > ./sysroots-components/cortexa8hf-neon/cannelloni/usr/lib/libcannelloni-common.so
> > >
> > > I miss the very end of your thoughts. Namely:
> > >
> > > > The name of the package containing the shared library is name of the
> > > > xxx first-level directory "packages-split/xxx".
> > >
> > > So, how should I write the RDEPENDS command?
> > >
> > > Something as: RDEPENDS_${PN} = "???"
> > >
> > > What should I put on the right side of the equation (according to the above traces)?
> > >
> > > Thank you,
> > > Zoran
> > > _______
> > >
> > > On Fri, Feb 14, 2020 at 11:49 AM Laurent Gauthier <laurent.gauthier@soccasys.com> wrote:
> > >>
> > >> Hi Zoran,
> > >>
> > >> The issue seems to be that the executable /usr/bin/cannelloni has a
> > >> reference to a shared library (libcannelloni-common.so.0) for which
> > >> the Yocto build system is not able to determine automatically which
> > >> package provides it.
> > >>
> > >> Based on the name I would assume that this package should be created
> > >> by the same recipe that produces this executable (one recipe produces
> > >> multiple packages).
> > >>
> > >> The most probable reason for this is that the new version of the
> > >> package you are trying to build does not install the "missing" shared
> > >> library properly. But here are some steps you could follow to try to
> > >> determine the stage of build/install/package where the shared library
> > >> goes missing.
> > >>
> > >> To debug this I would suggest that you check that this
> > >> "libcannelloni-common.so.0" shared library is present in several
> > >> directories.
> > >>
> > >> First in the build directory:
> > >>
> > >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build
> > >>
> > >> If it is not there that would be very surprising. I will assume that
> > >> it is present. Let us know if it is not.
> > >>
> > >> Then the next location to check for this shared library is the following:
> > >>
> > >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package
> > >>
> > >> If the file is not there, then it means that the recipe did not
> > >> "install" it (as this directory is populated by do_install).
> > >>
> > >> If the file is there then you can check if it is correctly assigned in
> > >> a package by determining if it is also found in:
> > >>
> > >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split
> > >>
> > >> If the file is not there, then it means that the recipe did not
> > >> "package" it properly (as this directory is populated by do_package).
> > >> You should review the recipe for any anomaly in assigning installed
> > >> files to individual packages.
> > >>
> > >> If the file is there then you probably should add the package that
> > >> contains the shared library in the RDEPENDS for the "cannelloni"
> > >> package.
> > >>
> > >> The name of the package containing the shared library is name of the
> > >> xxx first-level directory "packages-split/xxx".
> > >>
> > >> Not sure if that will solve your issue, but hopefully that will help.
> > >>
> > >> Kind Regards, Laurent.
> > >>
> > >> On Fri, Feb 14, 2020 at 11:27 AM Zoran <zoran.stojsavljevic@gmail.com> wrote:
> > >> >
> > >> > Hello List,
> > >> >
> > >> > I am trying to solve very interesting ERROR I am getting with slightly modified GENIVI Canneloni recipe:
> > >> > https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
> > >> >
> > >> > If I take the recipe as is, everything works fine, with:
> > >> > ## SRCREV = "${AUTOREV}"
> > >> > SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> > >> >
> > >> > Everything works fine, but if I swap the static hash with auto latest hash (SRCREV = "${AUTOREV}":
> > >> > SRCREV = "${AUTOREV}"
> > >> > ## SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> > >> >
> > >> > I am getting these ERRORS, which seems to me very strange?!
> > >> > _______
> > >> >
> > >> > Sstate summary: Wanted 11 Found 6 Missed 5 Current 1398 (54% match, 99% complete)
> > >> > NOTE: Executing Tasks
> > >> > NOTE: Setscene tasks completed
> > >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: package cannelloni contains bad RPATH /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build: in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni [rpaths]
> > >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: /usr/bin/cannelloni contained in package cannelloni requires libcannelloni-common.so.0, but no providers found in RDEPENDS_cannelloni? [file-rdeps]
> > >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
> > >> > ERROR: Logfile of failure stored in: /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/temp/log.do_package_qa.255490
> > >> > ERROR: Task (/home/user/projects2/beaglebone-black/bbb-yocto/meta-socketcan/recipes-can/cannelloni/cannelloni.bb:do_package_qa) failed with exit code '1'
> > >> > NOTE: Tasks Summary: Attempted 3791 tasks of which 3788 didn't need to be rerun and 1 failed.
> > >> > _______
> > >> >
> > >> > Any advise how to make GENIVI Cannelloni recipe to work with: SRCREV = "${AUTOREV}" ???
> > >> >
> > >> > Thank you,
> > >> > Zoran
> > >> >
> > >> > 
> > >>
> > >>
> > >>
> > >> --
> > >> Laurent Gauthier
> > >> Phone: +33 630 483 429
> > >> http://soccasys.com
> >
> >
> >
> > --
> > Laurent Gauthier
> > Phone: +33 630 483 429
> > http://soccasys.com



-- 
Laurent Gauthier
Phone: +33 630 483 429
http://soccasys.com

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

* Re: [yocto] Modified GENIVI Cannelloni recipe with strange side effects
  2020-02-19 18:05         ` Laurent Gauthier
@ 2020-02-20  5:30           ` Zoran
  0 siblings, 0 replies; 7+ messages in thread
From: Zoran @ 2020-02-20  5:30 UTC (permalink / raw)
  To: Laurent Gauthier; +Cc: yocto

Hello Laurent,

U R correct (and why I am not surprised?!). :-)

The correct recipe is here (it becomes very simplistic, seems):
https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb

I have (out of my ignorance) one question, which confuses me: Why this
functionality does not reside in do_install_append () (I would expect
this to be correct one, but it seems that inheritance in bitbake has
changed)?

Many thanks (what we, ignorant YOCTO guys, will do without the experts),
Zoran
_______

On Wed, Feb 19, 2020 at 7:05 PM Laurent Gauthier
<laurent.gauthier@soccasys.com> wrote:
>
> Hi Zoran,
>
> I just saw your reply now.
>
> I think that you might want to remove the INHIBIT_SYSROOT_STRIP and
> other INHIBIT_* options from your recipe.
>
> For reference a message from Khem warning that this option should be
> used sparingly:
>
> * https://www.yoctoproject.org/pipermail/yocto/2019-March/044415.html
>
> My best guess is that the use of this option is directly linked to
> chrpath being needed.
>
> As this recipe is being built with a rather clean looking
> CMakeLists.txt none of these weird options are needed.
>
> Kind regards, Laurent.
>
> On Mon, Feb 17, 2020 at 8:01 AM Zoran Stojsavljevic
> <zoran.stojsavljevic@gmail.com> wrote:
> >
> > > The issue I see is that the following files have been build but NOT installed:
> > >
> > > * libcannelloni-common.so.0
> > > * libcannelloni-common.so.0.0.1
> >
> > Not quite... The solution is outlined here (in function do_install):
> > +       ## ERROR: QA Issue: package cannelloni contains bad RPATH
> > +       ## quick fix is in a do_install or do_install_append do
> > +       chrpath -d ${D}${bindir}/cannelloni
> >
> > https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
> > https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb_GENIVI
> >
> > I admit, your first email has shaken my head, so I can see things much
> > more clear. :-)
> >
> > My best guess, this solution is just a workaround (not the final one),
> > since I have in ${D} the following:
> >
> > cannelloni-1.0: package cannelloni contains bad RPATH
> > /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build:
> > in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni
> > [rpaths]
> >
> > So, since my limited knowledge about bitbake build systems ends here,
> > somebody from YOCTO primes (potentially Khem Raj, Ross Burton, maybe
> > even Richard Purdie) should look more closely into this issue
> > (apologies for my unsolicited suggestions).
> >
> > Laurent,
> >
> > Once again, thank you for unselfish help,
> > Zoran
> > _______
> >
> >
> > On Fri, Feb 14, 2020 at 2:20 PM Laurent Gauthier
> > <laurent.gauthier@soccasys.com> wrote:
> > >
> > > Hi Zoran,
> > >
> > > You are almost there! I can feel it... :-)
> > >
> > > The issue I see is that the following files have been build but NOTinstalled:
> > >
> > > * libcannelloni-common.so.0
> > > * libcannelloni-common.so.0.0.1
> > >
> > > If you make sure that they are installed that should fix your issue.
> > >
> > > Based on the info you provided no RDEPENDS seems to be required as it
> > > all appears that everything is in one package named "cannelloni",
> > > rather than a package for the main executable and then packages for
> > > libraries.
> > >
> > > Kind regards, Laurent.
> > >
> > > On Fri, Feb 14, 2020 at 12:43 PM Zoran Stojsavljevic
> > > <zoran.stojsavljevic@gmail.com> wrote:
> > > >
> > > > Hello Laurent,
> > > >
> > > > Many thanks to you for the help. :-)
> > > >
> > > > I did some modifications, and now I have all the elements in there/in place:
> > > >
> > > > [user@fedora31-ssd cannelloni]$ cd ../../../build/tmp
> > > > [user@fedora31-ssd tmp]$ find . -name libcannelloni*
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/image/usr/lib/libcannelloni-common.so
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/sysroot-destdir/usr/lib/libcannelloni-common.so
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/.debug/libcannelloni-common.so
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package/usr/lib/libcannelloni-common.so
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/lib/libcannelloni-common.so
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni-dbg/usr/lib/.debug/libcannelloni-common.so
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so.0.0.1
> > > > ./work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build/libcannelloni-common.so
> > > > ./sysroots-components/cortexa8hf-neon/cannelloni/usr/lib/libcannelloni-common.so
> > > >
> > > > I miss the very end of your thoughts. Namely:
> > > >
> > > > > The name of the package containing the shared library is name of the
> > > > > xxx first-level directory "packages-split/xxx".
> > > >
> > > > So, how should I write the RDEPENDS command?
> > > >
> > > > Something as: RDEPENDS_${PN} = "???"
> > > >
> > > > What should I put on the right side of the equation (according to the above traces)?
> > > >
> > > > Thank you,
> > > > Zoran
> > > > _______
> > > >
> > > > On Fri, Feb 14, 2020 at 11:49 AM Laurent Gauthier <laurent.gauthier@soccasys.com> wrote:
> > > >>
> > > >> Hi Zoran,
> > > >>
> > > >> The issue seems to be that the executable /usr/bin/cannelloni has a
> > > >> reference to a shared library (libcannelloni-common.so.0) for which
> > > >> the Yocto build system is not able to determine automatically which
> > > >> package provides it.
> > > >>
> > > >> Based on the name I would assume that this package should be created
> > > >> by the same recipe that produces this executable (one recipe produces
> > > >> multiple packages).
> > > >>
> > > >> The most probable reason for this is that the new version of the
> > > >> package you are trying to build does not install the "missing" shared
> > > >> library properly. But here are some steps you could follow to try to
> > > >> determine the stage of build/install/package where the shared library
> > > >> goes missing.
> > > >>
> > > >> To debug this I would suggest that you check that this
> > > >> "libcannelloni-common.so.0" shared library is present in several
> > > >> directories.
> > > >>
> > > >> First in the build directory:
> > > >>
> > > >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build
> > > >>
> > > >> If it is not there that would be very surprising. I will assume that
> > > >> it is present. Let us know if it is not.
> > > >>
> > > >> Then the next location to check for this shared library is the following:
> > > >>
> > > >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/package
> > > >>
> > > >> If the file is not there, then it means that the recipe did not
> > > >> "install" it (as this directory is populated by do_install).
> > > >>
> > > >> If the file is there then you can check if it is correctly assigned in
> > > >> a package by determining if it is also found in:
> > > >>
> > > >> * /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split
> > > >>
> > > >> If the file is not there, then it means that the recipe did not
> > > >> "package" it properly (as this directory is populated by do_package).
> > > >> You should review the recipe for any anomaly in assigning installed
> > > >> files to individual packages.
> > > >>
> > > >> If the file is there then you probably should add the package that
> > > >> contains the shared library in the RDEPENDS for the "cannelloni"
> > > >> package.
> > > >>
> > > >> The name of the package containing the shared library is name of the
> > > >> xxx first-level directory "packages-split/xxx".
> > > >>
> > > >> Not sure if that will solve your issue, but hopefully that will help.
> > > >>
> > > >> Kind Regards, Laurent.
> > > >>
> > > >> On Fri, Feb 14, 2020 at 11:27 AM Zoran <zoran.stojsavljevic@gmail.com> wrote:
> > > >> >
> > > >> > Hello List,
> > > >> >
> > > >> > I am trying to solve very interesting ERROR I am getting with slightly modified GENIVI Canneloni recipe:
> > > >> > https://github.com/ZoranStojsavljevic/meta-socketcan/blob/master/recipes-can/cannelloni/cannelloni.bb
> > > >> >
> > > >> > If I take the recipe as is, everything works fine, with:
> > > >> > ## SRCREV = "${AUTOREV}"
> > > >> > SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> > > >> >
> > > >> > Everything works fine, but if I swap the static hash with auto latest hash (SRCREV = "${AUTOREV}":
> > > >> > SRCREV = "${AUTOREV}"
> > > >> > ## SRCREV = "0fb6880b719b8acf2b4210b264b7140135e4be8a"
> > > >> >
> > > >> > I am getting these ERRORS, which seems to me very strange?!
> > > >> > _______
> > > >> >
> > > >> > Sstate summary: Wanted 11 Found 6 Missed 5 Current 1398 (54% match, 99% complete)
> > > >> > NOTE: Executing Tasks
> > > >> > NOTE: Setscene tasks completed
> > > >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: package cannelloni contains bad RPATH /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/build: in file /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/packages-split/cannelloni/usr/bin/cannelloni [rpaths]
> > > >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA Issue: /usr/bin/cannelloni contained in package cannelloni requires libcannelloni-common.so.0, but no providers found in RDEPENDS_cannelloni? [file-rdeps]
> > > >> > ERROR: cannelloni-1.0-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
> > > >> > ERROR: Logfile of failure stored in: /home/user/projects2/beaglebone-black/bbb-yocto/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/cannelloni/1.0-r0/temp/log.do_package_qa.255490
> > > >> > ERROR: Task (/home/user/projects2/beaglebone-black/bbb-yocto/meta-socketcan/recipes-can/cannelloni/cannelloni.bb:do_package_qa) failed with exit code '1'
> > > >> > NOTE: Tasks Summary: Attempted 3791 tasks of which 3788 didn't need to be rerun and 1 failed.
> > > >> > _______
> > > >> >
> > > >> > Any advise how to make GENIVI Cannelloni recipe to work with: SRCREV = "${AUTOREV}" ???
> > > >> >
> > > >> > Thank you,
> > > >> > Zoran
> > > >> >
> > > >> > 
> > > >>
> > > >>
> > > >>
> > > >> --
> > > >> Laurent Gauthier
> > > >> Phone: +33 630 483 429
> > > >> http://soccasys.com
> > >
> > >
> > >
> > > --
> > > Laurent Gauthier
> > > Phone: +33 630 483 429
> > > http://soccasys.com
>
>
>
> --
> Laurent Gauthier
> Phone: +33 630 483 429
> http://soccasys.com

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

end of thread, other threads:[~2020-02-20  5:30 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-14 10:27 Modified GENIVI Cannelloni recipe with strange side effects Zoran
2020-02-14 10:44 ` [yocto] " Laurent Gauthier
2020-02-14 11:43   ` Zoran
2020-02-14 13:16     ` Laurent Gauthier
2020-02-17  7:01       ` Zoran
2020-02-19 18:05         ` Laurent Gauthier
2020-02-20  5:30           ` Zoran

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.