Hi again Emily,

You have put your finger on the core issue there.

The name of the boost python library which is linked in your
"opc-ua-server-gfex" recipe is "boost_python-mt" where it seems that
it should be "boost_python3-mt".

I guess you should have a look at the CMakeLists.txt of the
"opc-ua-server-gfex" software package to see how to switch to linking
with "boost_python3-mt" instead as a quick review of the boost recipe
seems to reveal no python2 support.

Kind Regards, Laurent.


On Tue, Mar 17, 2020 at 7:19 PM Emily S <[email protected]> wrote:
>
> Hi Laurent -
>
> Thanks for the suggestion. It looks like there are a few packages that 
> provide libboost_python3:
>
> find tmp/work/*/*/*/packages-split -name libboost_python\*
> tmp/work/aarch64-poky-linux/boost/1.64.0-r0/packages-split/boost-dev/usr/lib/libboost_python3.so
> tmp/work/aarch64-poky-linux/boost/1.64.0-r0/packages-split/boost-python/usr/lib/libboost_python3.so.1.64.0
> tmp/work/aarch64-poky-linux/boost/1.64.0-r0/packages-split/boost-staticdev/usr/lib/libboost_python3.a
> tmp/work/aarch64-poky-linux/boost/1.64.0-r0/packages-split/boost-dbg/usr/lib/.debug/libboost_python3.so.1.64.0
>
> Adding boost-python to RDEPENDS doesn't help, I have tried it before also. 
> This sort of made sense to me as I thought RDEPENDS was for run time 
> dependencies, but perhaps I have misunderstood.
>
> I am working with the rocko branch and python2, so perhaps that's the problem?
>
> Thanks,
> Emily
>
>
> On Tue, Mar 17, 2020 at 1:02 PM Laurent Gauthier 
> <[email protected]> wrote:
>>
>> Hi Emily,
>>
>> To find the solution to your issue in a rational and deterministic way
>> we need to start from the error message.
>>
>> What I understand is that while build recipe "opc-ua-server-gfex" you
>> get an error message that says in short "ld: cannot find
>> -lboost_python-mt".
>>
>> Therefore you need to determine which recipe (and which package in
>> that recipe) provides the "boost_python-mt" library.
>>
>> One way to determine this is to run something like this:
>>
>>     find 
>> /local/d6/easmith5/rocko_bitbake/poky/build/tmp/work/*/*/*/packages-split
>> -name libboost_python\*
>>
>> This should show you which recipe, and which package produced by that
>> recipe has the library you are looking for.
>>
>> The names of the first-level directories inside "packages-split" are
>> packages names.
>>
>> Based on things you have mentioned in your previous e-mail my guess
>> would be that adding an RDEPENDS = "boost-python" should help, but I
>> might be wrong.
>>
>> I hope this will help you move in the right direction.
>>
>> Kind regards, Laurent.
>>
>>
>> On Tue, Mar 17, 2020 at 6:07 PM Emily <[email protected]> wrote:
>> >
>> > Hi Quentin -
>> >
>> > That's what I tried originally! DEPENDS on boost and not boost-python 
>> > gives me the following error when trying to build my original recipe:
>> >
>> > /local/d6/easmith5/rocko_bitbake/poky/build/tmp/work/aarch64-poky-linux/opc-ua-server-gfex/1.0+gitAUTOINC+921c563309-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/../../libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/7.3.0/ld:
>> > cannot find -lboost_python-mt
>> >
>> > So I tried a bunch of other this which also didn't seem to work.
>> >
>> > Thanks for the response!
>> > Emily
>> >
>> >
>> > On Tue, Mar 17, 2020 at 11:04 AM Quentin Schulz 
>> > <[email protected]> wrote:
>> >>
>> >> Hi Emily,
>> >>
>> >> On Tue, Mar 17, 2020 at 10:44:10AM -0500, Emily wrote:
>> >> > Hi all -
>> >> >
>> >> > I'm trying to build an opca recipe (
>> >> > https://github.com/kratsg/meta-l1calo/blob/add/opcServer/recipes-core/opc-ua/opc-ua-server-gfex_git.bb)
>> >> > and it's giving me a build error like:
>> >> >
>> >> > |
>> >> > /local/d6/easmith5/rocko_bitbake/poky/build/tmp/work/aarch64-poky-linux/opc-ua-server-gfex/1.0+gitAUTOINC+921c563309-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/../../libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/7.3.0/ld:
>> >> > cannot find -lboost_python-mt
>> >> >
>> >> > Which seems to indicated I need to add boost-python to my list of 
>> >> > DEPENDS.
>> >> > When I do that I get the error:
>> >> >
>> >> > ERROR: Nothing PROVIDES 'boost-python' (but
>> >> > /local/d6/easmith5/rocko_bitbake/meta-l1calo/recipes-core/opc-ua/
>> >> > opc-ua-server-gfex_git.bb DEPENDS on or otherwise requires it). Close
>> >> > matches:
>> >> >   boost RPROVIDES boost-python
>> >> >
>> >> > I've tried adding PACKAGECONFIG_pn-boost="python" to both my local.conf 
>> >> > and
>> >> > to the image definition as I saw this online, but neither seems to 
>> >> > work. It
>> >> > seems like boost-python is being built (I can see it in the list when I 
>> >> > run
>> >> > oe-pkgdata-utils list-pkgs -p boost) but it doesn't seem to be 
>> >> > available at
>> >> > build for this recipe.
>> >> >
>> >> > If I remove boost from my list of DEPENDS I get an error about that, so
>> >> > obviously boost itself is available at build for the original recipe. 
>> >> > I've
>> >> > also tried adding boost-native to DEPENDS, also did not work.
>> >> >
>> >> > Is there something obvious I'm missing, or some trick to making
>> >> > boost-python available at build for this other recipe?
>> >> >
>> >>
>> >> Ok so two things.
>> >>
>> >> Yes, I'd say you need python in PACKAGECONFIG for boost. However, it
>> >> seems it's already part of the default value of PACKAGECONFIG, c.f.
>> >> http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-support/boost/boost.inc?h=master#n45
>> >> so if no bbappend is overriding it, I'd say you're safe. Better check
>> >> with the version in your layer that it's there.
>> >> If you don't want to check manually, try `bitbake -e boost | grep -e
>> >> "^PACKAGECONFIG="`
>> >>
>> >> DEPENDS contains only recipes (well, PROVIDES but PROVIDES has the name
>> >> of the recipe in it at all times) while RDEPENDS_* (usually ${PN}*) 
>> >> contains
>> >> only packages.
>> >>
>> >> So you need to DEPENDS on boost, not boost-python. That should be enough
>> >> hopefully!
>> >>
>> >> Quentin
>> >
>> > 
>>
>>
>>
>> --
>> Laurent Gauthier
>> Phone: +33 630 483 429
>> http://soccasys.com



-- 
Laurent Gauthier
Phone: +33 630 483 429
http://soccasys.com
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#48795): https://lists.yoctoproject.org/g/yocto/message/48795
Mute This Topic: https://lists.yoctoproject.org/mt/72027139/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to