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]] -=-=-=-=-=-=-=-=-=-=-=-
