Bug 2181787

Summary: boost_stacktrace_backtrace not provided
Product: [Fedora] Fedora Reporter: Sandro <gui1ty>
Component: boostAssignee: Thomas Rodgers <trodgers>
Status: CLOSED DEFERRED QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: denis.arnaud_fedora, jwakely, laurent.rineau__fedora, mcermak, trodgers
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-04-12 01:21:20 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Sandro 2023-03-25 23:34:06 UTC
Description of problem:

Brewtarget's latest release requires boost_stacktrace_backtrace, but it is not provided by any of the packages pulled in by boost-devel.

Version-Release number of selected component (if applicable):

1.81.0-1.fc39

How reproducible:

Always

Steps to Reproduce:
1. Build Brewtarget 3.0.7 for rawhide
2.
3.

Actual results:



Expected results:

boost_stacktrace_backtrace provided when build requires boost-devel

Additional info:

Upstream issue: https://github.com/Brewtarget/brewtarget/issues/723
Failed release-monitoring build: http://koji.fedoraproject.org/koji/taskinfo?taskID=98326275

Error message in build.log:

CMake Error at /usr/lib64/cmake/Boost-1.81.0/BoostConfig.cmake:141 (find_package):
  Could not find a package configuration file provided by
  "boost_stacktrace_backtrace" (requested version 1.81.0) with any of the
  following names:
    boost_stacktrace_backtraceConfig.cmake
    boost_stacktrace_backtrace-config.cmake
  Add the installation prefix of "boost_stacktrace_backtrace" to
  CMAKE_PREFIX_PATH or set "boost_stacktrace_backtrace_DIR" to a directory
  containing one of the above files.  If "boost_stacktrace_backtrace"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  /usr/lib64/cmake/Boost-1.81.0/BoostConfig.cmake:262 (boost_find_component)
  /usr/share/cmake/Modules/FindBoost.cmake:594 (find_package)
  CMakeLists.txt:653 (find_package)
-- Configuring incomplete, errors occurred!

Comment 1 Jonathan Wakely 2023-03-27 21:25:57 UTC
Is there a reason why it has to link to *that* particular library? Fedora provides other backends for libboost_stacktrace, just not that one.

Comment 2 Sandro 2023-03-27 21:59:11 UTC
Honestly, I don't know. It has been introduced in the latest release (3.0.7) in a commit titled "Add Meson/bt as alternative build and packaging system; make enum deserialisation more robust".

I'm not a developer myself. If you could list the alternatives that are available by default in Fedora, I will ask upstream if they could switch to one of those. On the other hand, is there a reason for not making *this* particular library available? Does it conflict with other options?

Comment 3 Jonathan Wakely 2023-04-11 11:41:42 UTC
$ rpm -ql boost-stacktrace | grep /usr/lib64
/usr/lib64/libboost_stacktrace_addr2line.so.1.78.0
/usr/lib64/libboost_stacktrace_basic.so.1.78.0
/usr/lib64/libboost_stacktrace_noop.so.1.78.0

Fedora does not provide libbacktrace, so Boost can't build against it.

Comment 4 Sandro 2023-04-12 01:21:20 UTC
Thanks. I forwarded that to upstream and they will be looking into a solution.