-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
boost: add with_stacktrace_addr2line option #22603
boost: add with_stacktrace_addr2line option #22603
Conversation
While attempting to cross-compile Boost for the x86 architecture using a multilib toolchain I have the follwoing error: boost/1.84.0: WARN: Boost component 'stacktrace_addr2line' is missing libraries. Try building boost with '-o boost:without_stacktrace_addr2line'. (Option is not guaranteed to exist) boost/1.84.0: WARN: Boost component 'stacktrace_backtrace' is missing libraries. Try building boost with '-o boost:without_stacktrace_backtrace'. (Option is not guaranteed to exist) ERROR: boost/1.84.0: Error in package_info() method, line 1750 raise ConanException(f"These libraries were expected to be built, but were not built: {non_built}") ConanException: These libraries were expected to be built, but were not built: {'boost_stacktrace_backtrace', 'boost_stacktrace_addr2line'} To address this issue, I've introduced the 'with_stacktrace_addr2line' option. This modification allows explicitly disable the inclusion of 'boost_stacktrace_addr2line' during the build process. By doing so, it allows Boost to be built with alternative stacktrace options, such as 'boost_stacktrace_noop' and 'boost_stacktrace_basic'. Signed-off-by: Artem Panfilov <[email protected]>
🤖 Beep Boop! This pull request is making changes to 'recipes/boost//'. 👋 @grafikrobot @Hopobcn @jwillikers you might be interested. 😉 |
This comment has been minimized.
This comment has been minimized.
Hello @temap Could you please elaborate a bit more about what profile did you use? Which Conan version are you running? Is it possible to share the full build log? I would like to reproduce your error first. |
Conan v1 pipeline ✔️All green in build 2 (
Conan v2 pipeline ✔️
All green in build 2 (
|
Hooks produced the following warnings for commit 11577bcboost/1.83.0@#4bcc907eba59d62e35d1f943625e75bd
boost/1.77.0@#bd5b12560b6cd9c418651f448d3e97c6
boost/1.84.0@#6cb3d976a10bef98e1ff197ae51985de
boost/1.82.0@#b3ddf34015559d384d97d4eb774bc846
boost/1.75.0@#ad091458a73e6896415bcb82c195965b
boost/1.79.0@#fe5af3cacd62b5564ff4a53bdea13ca1
boost/1.73.0@#730b574c3c4cbad61b08a25f1adee91f
boost/1.78.0@#a52d8a683cf9dfe586efa4248a6f360e
boost/1.81.0@#d4e153a8f4f6bb95039459118c72537c
boost/1.76.0@#2c74b2dbba55f3d359c3a586fb9dc75c
boost/1.74.0@#1ac07669053f9149da88bb860bb0c697
boost/1.80.0@#1ec6b095e96e4ac0b522ebfee56b20ae
boost/1.71.0@#a3c591fd2884fd2e846f61482e9f04f4
boost/1.72.0@#d0a469e792038308ea5a7f0e2c70d295
|
I'm using the 2.0 Conan version:
My profile: [settings]
arch=x86
os=Linux
compiler=gcc
compiler.version=12
compiler.cppstd=20
compiler.libcxx=libstdc++11
build_type=Release
[buildenv]
CC=x86_64-multilib-linux-gnu-gcc
CXX=x86_64-multilib-linux-gnu-g++
[conf]
tools.cmake.cmaketoolchain:generator=Ninja
tools.build:compiler_executables={'c':'x86_64-multilib-linux-gnu-gcc','cpp':'x86_64-multilib-linux-gnu-g++'}
tools.build:sharedlinkflags=["-m32"] I also found one related github issue: Anyway, we need a clear option to turn |
@temap I'm missing something here, because actually I can build boost to x86 without errors, using its default options set (only shared here):
|
@uilianries with the latest recipe version I can't reproduce the issue. |
@temap Thank you for your feedbacK! |
I have forked latest conan-center-index, but still hitting the same issue. Also, I don't see the option 'with_stacktrace_addr2line' in the receipe. Is it merged yet? |
@vithalsm Hello! There is no option for with_stacktrace_addr2line. The PR was not merged as well, but closed. The current recipe in CCI manages it automatically: https://github.com/conan-io/conan-center-index/blob/master/recipes/boost/all/conanfile.py#L615 When the recipe has stacktrace option active, it not on Windows and is not Boost built as header-only, it's expected having stacktrace_addr2line. In case you are having some kind of error with this configuration, please, open a new issue with more details, so we can reproduce your scenario. |
With all default setting and recipe, 'native' build goes through fine, but 'cross' build fails - Errors as below: boost/1.83.0: WARN: Boost component 'stacktrace_addr2line' is missing libraries. Try building boost with '-o boost:without_stacktrace_addr2line'. (Option is not guaranteed to exist) I did following setting in boost conafile.py recipe: With that, I see below error: boost/1.83.0: WARN: Boost component 'stacktrace_addr2line' is missing libraries. Try building boost with '-o boost:without_stacktrace_addr2line'. (Option is not guaranteed to exist) Any clue on resolving this please? |
@temap As I commented above, please, open a new issue reporting your case with all requested information: https://github.com/conan-io/conan-center-index/issues/new/choose Please, use the form It's important having a full build log, not only partial as your posted, as it's hard to reproduce each scenario and takes time to understand the case. As more information you have, faster will be to address your case. Regards. |
@uilianries, just wanted to let you know I’m no longer working with Conan, so I can’t help out with that. Sorry about that. @vithalsm could you please create a new issue? Thanks |
While attempting to cross-compile Boost for the x86 architecture using a multilib toolchain I have the following error:
To address this issue, I've introduced the 'with_stacktrace_addr2line' option.
This modification allows explicitly disable the inclusion of 'boost_stacktrace_addr2line' during the build process. By doing so, it allows Boost to be built with alternative stacktrace options, such as 'boost_stacktrace_noop' and 'boost_stacktrace_basic'.
Specify library name and version: boost/*