Using boost-program-options and native
Hey all!
I want to build a tool which makes use of boost-program-options lib. As long as I compile for the target, all is fine, but when I add
Quoted 1 line
BBCLASSEXTEND += "native"
to my recipe, I a bitbake error "Nothing Provides" ... :(
Quoted 2 lines
ERROR: Required build target 'mytool-native' has no buildable providers. Missing or unbuildable dependency chain was: ['mytool-native', 'boost-program-options-native']
In the recipe I just depend on boost and RDEPEND on boost-program-options:
Quoted 2 lines
DEPENDS = "boost"
RDEPENDS_${PN} = "boost-program-options"
Is something wrong with this? Why is there a package boost-program-options but no boost-program-options-native, altough boost-native exists and the libboost-program-options.so is installed into the native sysroot. (I can compile flawlessly without the RDEPENDS line.)
Any hints?
Cheers,
Thilo
Quoted 10 lines · On Wed, 2017-04-12 at 13:47 +0000, [email protected] wrote:
Hey all!
I want to build a tool which makes use of boost-program-options lib. As long as I compile for the target, all is fine, but when I add
Quoted 1 line
BBCLASSEXTEND += "native"
to my recipe, I a bitbake error "Nothing Provides" ... :(
Quoted 2 lines
ERROR: Required build target 'mytool-native' has no buildable providers. Missing or unbuildable dependency chain was: ['mytool-native', 'boost-program-options-native']
In the recipe I just depend on boost and RDEPEND on boost-program-options:
Quoted 8 lines
Quoted 2 lines
DEPENDS = "boost"
RDEPENDS_${PN} = "boost-program-options"Is something wrong with this? Why is there a package boost-program-options but no boost-program-options-native, altough boost-native exists and the libboost-program-options.so is installed into the
native sysroot. (I can compile flawlessly without the RDEPENDS line.)
Native and nativesdk flavors don't have packages, so RDEPENDS only works when depending on ${PN}-native (but not for ${PN}-native-some-package).
Try:
DEPENDS = "boost"
RDEPENDS_${PN}_class-target = "boost-program-options"
"boost" already is a dependency via DEPENDS, so you shouldn't need an RDEPENDS for it in the native case.
Signature · 6 lines
Best Regards, Patrick Ohly The content of this message is my personal opinion only and although I am an employee of Intel, the statements I make here in no way represent Intel's position on the issue, nor am I authorized to speak on behalf of Intel on this matter.
Quoted 21 lines · Patrick Ohly
Quoted 8 lines · On Wed, 2017-04-12 at 13:47 +0000, [email protected] wrote:
I want to build a tool which makes use of boost-program-options lib. As long as I compile for the target, all is fine, but when I add
Quoted 1 line
BBCLASSEXTEND += "native"
to my recipe, I a bitbake error "Nothing Provides" ... :(
Quoted 2 lines
ERROR: Required build target 'mytool-native' has no buildable providers. Missing or unbuildable dependency chain was: ['mytool-native', 'boost-program-options-native']
In the recipe I just depend on boost and RDEPEND on boost-program-options:
Quoted 8 lines
Quoted 2 lines
DEPENDS = "boost"
RDEPENDS_${PN} = "boost-program-options"Is something wrong with this? Why is there a package boost-program-options but no boost-program-options-native, altough boost-native exists and the libboost-program-options.so is installed into the
native sysroot. (I can compile flawlessly without the RDEPENDS line.)Native and nativesdk flavors don't have packages, so RDEPENDS only works when depending on ${PN}-native (but not for ${PN}-native-some-package).
Quoted 7 lines
Try:
DEPENDS = "boost"
RDEPENDS_${PN}_class-target = "boost-program-options""boost" already is a dependency via DEPENDS, so you shouldn't need an RDEPENDS for it in the native case.
The following worked for me when building a native recipe that depends on Boost Program Options:
inherit cmake
DEPENDS = "boost ..."
BBCLASSEXTEND = "native"
I'm no OE expect, so I won't claim this it is right answer, but it does at least build.
Cheers,
Phil
Signature · 4 lines
Phil Wise, ATS Advanced Telematic Systems GmbH Kantstrasse 162, 10623 Berlin Managing Directors: Dirk Pöschl, Armin G. Schmidt Register Court: HRB 151501 B, Amtsgericht Charlottenburg
Am Donnerstag, den 13.04.2017, 08:53 +0200 schrieb Phil Wise:
Quoted 31 lines · Patrick Ohly
Quoted 22 lines · On Wed, 2017-04-12 at 13:47 +0000, [email protected] wrote:
Quoted 9 lines
I want to build a tool which makes use of boost-program-options lib. As long as I compile for the target, all is fine, but when I add
Quoted 1 line
BBCLASSEXTEND += "native"
to my recipe, I a bitbake error "Nothing Provides" ... :(
Quoted 2 lines
ERROR: Required build target 'mytool-native' has no buildable providers. Missing or unbuildable dependency chain was: ['mytool-native', 'boost-program-options-native']
In the recipe I just depend on boost and RDEPEND on boost-program-options:
Quoted 8 lines
Quoted 2 lines
DEPENDS = "boost"
RDEPENDS_${PN} = "boost-program-options"Is something wrong with this? Why is there a package boost-program-options but no boost-program-options-native, altough boost-native exists and the libboost-program-options.so is installed into the
native sysroot. (I can compile flawlessly without the RDEPENDS line.)Native and nativesdk flavors don't have packages, so RDEPENDS only works when depending on ${PN}-native (but not for ${PN}-native-some-package).
Quoted 7 lines
Try:
DEPENDS = "boost"
RDEPENDS_${PN}_class-target = "boost-program-options""boost" already is a dependency via DEPENDS, so you shouldn't need an RDEPENDS for it in the native case.
Quoted 9 lines
The following worked for me when building a native recipe that depends on Boost Program Options:libboost-program-options1.60.0
inherit cmake
DEPENDS = "boost ..."
BBCLASSEXTEND = "native"
Thanks for your answers!
The problem is, that boost_program_options is a library which needs to be installed on the target. This isn't done with DEPENDS boost only.
But the answer of Patrick Ohly worked for me. Now my package has a dependency to libboost-program-options1.60.0 in the control file!
Cheers,
Thilo