Also as Quentin suggested it might be needed to remove the "-mt"
suffix, but I see it in the do_install() method of the "boost" recipe
for revision 1.64.

Kind regards, Laurent.

On Tue, Mar 17, 2020 at 11:17 PM Laurent Gauthier via
Lists.Yoctoproject.Org
<[email protected]> wrote:
>
> 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
> 



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

View/Reply Online (#48796): https://lists.yoctoproject.org/g/yocto/message/48796
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