RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 921792 - boost exceptions broken on RHEL 6.4 ("looser throw specifier")
Summary: boost exceptions broken on RHEL 6.4 ("looser throw specifier")
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: boost
Version: 6.4
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Petr Machata
QA Contact: qe-baseos-tools-bugs
URL:
Whiteboard:
Depends On: 1000337 1037680
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-03-14 23:14 UTC by Ben Webb
Modified: 2015-05-05 01:37 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-04-02 09:40:03 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Ben Webb 2013-03-14 23:14:40 UTC
Description of problem:
Any C++ code that tries to use Boost exceptions fails to compile in RHEL 6.4. The same code works fine in RHEL 6.3.

Version-Release number of selected component (if applicable):
boost-1.41.0-11.el6_1.2.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Create a simple test.cpp containing just the single line
#include <boost/exception/all.hpp>

2. Try to compile with
g++ -Wall -c test.cpp
  
Actual results:
Compilation fails with
In file included from /usr/include/boost/exception/all.hpp:24,
                 from test.cpp:1:
/usr/include/boost/exception_ptr.hpp:43: error: looser throw specifier for ‘virtual boost::exception_ptr::~exception_ptr()’
/usr/include/boost/exception/detail/exception_ptr_base.hpp:26: error:   overriding ‘virtual boost::exception_detail::exception_ptr_base::~exception_ptr_base() throw ()’

Expected results:
Compilation succeeds.

Additional info:
This looks to be the same as the bug that was reported against the EPEL boost141 package with RHEL 5.9 (bug #894072). Applying the changeset attached to that bug report fixes the problem for me.

Comment 2 Petr Machata 2013-03-15 11:44:26 UTC

*** This bug has been marked as a duplicate of bug 908774 ***

Comment 3 Petr Machata 2013-03-15 11:46:35 UTC
Apologies, 908774 isn't publicly accessible, let's track this separately.

Comment 4 Douglas Hubler 2013-03-19 11:32:15 UTC
I hope this issue is resolved quickly, we're stuck with this issue as well. 

 http://www.sipfoundry.org/forum/-/message_boards/message/1376527


What triggered this AFAIU is a gcc update.  I'm surprised there was update to gcc on what is otherwise meant to be a stable OS.

Comment 5 Petr Machata 2013-04-02 09:40:03 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-0692.html

Comment 6 Scott Dial 2013-08-19 18:56:52 UTC
I have a x86_64 install of EL6, and "yum install boost-devel.i686" fails due to a mismatch in the versions of boost. It seems like the 1.41.0-17.el6_4.i686 RPMs were not added to the x86_64 repositories correctly. Some are present, but not all. Am I missing something here?

Comment 7 Petr Machata 2013-08-19 19:27:25 UTC
Do you have an i686 static library installed?  I wouldn't be entirely surprised if that was the cause.  In any case, can you post the conflict message that you are getting?

Comment 8 Scott Dial 2013-08-19 23:33:15 UTC
# rpm -qa | grep boost
boost-system-1.41.0-17.el6_4.x86_64
boost-wave-1.41.0-17.el6_4.x86_64
boost-iostreams-1.41.0-17.el6_4.x86_64
boost-filesystem-1.41.0-17.el6_4.x86_64
boost-date-time-1.41.0-17.el6_4.x86_64
boost-serialization-1.41.0-17.el6_4.x86_64
boost-python-1.41.0-17.el6_4.x86_64
boost-regex-1.41.0-17.el6_4.x86_64
boost-signals-1.41.0-17.el6_4.x86_64
boost-test-1.41.0-17.el6_4.x86_64
boost-devel-1.41.0-17.el6_4.x86_64
boost-thread-1.41.0-17.el6_4.x86_64
boost-program-options-1.41.0-17.el6_4.x86_64
boost-graph-1.41.0-17.el6_4.x86_64
boost-1.41.0-17.el6_4.x86_64
# yum install boost-devel.i686
...
Error: Package: boost-devel-1.41.0-11.el6.i686 (rhel-x86_64-workstation-6)
           Requires: boost = 1.41.0-11.el6
           Installed: boost-1.41.0-17.el6_4.x86_64 (@rhel-x86_64-workstation-6)
               boost = 1.41.0-17.el6_4
           Available: boost-1.41.0-11.el6.x86_64 (rhel-x86_64-workstation-6)
               boost = 1.41.0-11.el6
           Available: boost-1.41.0-11.el6_1.2.x86_64 (rhel-x86_64-workstation-6)
               boost = 1.41.0-11.el6_1.2
           Available: boost-1.41.0-15.el6_4.x86_64 (rhel-x86_64-workstation-6)
               boost = 1.41.0-15.el6_4
# yum shell
> remove boost*
> install boost-devel.i686
> run
...
Error: Package: boost-devel-1.41.0-11.el6.i686 (rhel-x86_64-workstation-6)
    Requires: boost = 1.41.0-11.el6
    Removing: boost-1.41.0-17.el6_4.x86_64 (@rhel-x86_64-workstation-6)
        boost = 1.41.0-17.el6_4
    Available: boost-1.41.0-11.el6.x86_64 (rhel-x86_64-workstation-6)
        boost = 1.41.0-11.el6
    Available: boost-1.41.0-11.el6_1.2.x86_64 (rhel-x86_64-workstation-6)
        boost = 1.41.0-11.el6_1.2
    Available: boost-1.41.0-15.el6_4.x86_64 (rhel-x86_64-workstation-6)
        boost = 1.41.0-15.el6_4

# yum list --showduplicates boost-devel.i686
Available Packages
boost-devel.i686             1.41.0-11.el6             rhel-x86_64-workstation-6

If I walk over to a RHEL 6 i686 install, and do the same search:

# yum list --showduplicates boost-devel.i686
Installed Packages
boost-devel.i686           1.41.0-17.el6_4              @rhel-i386-workstation-6
Available Packages
boost-devel.i686           1.41.0-11.el6                rhel-i386-workstation-6
boost-devel.i686           1.41.0-11.el6_1.2            rhel-i386-workstation-6
boost-devel.i686           1.41.0-15.el6_4              rhel-i386-workstation-6
boost-devel.i686           1.41.0-17.el6_4              rhel-i386-workstation-6

It would seem that these RPMs should be in the x86_64 repo. My company reposync's the RHEL repos for local mirrors and I can verify that there is not nor has there ever been (we never delete RPMs so that we have backups for everything):

# ls boost-devel*.i686.rpm
boost-devel-1.41.0-11.el6.i686.rpm

Strange, yes?

Comment 9 Petr Machata 2013-08-20 10:11:59 UTC
This looks like a release engineering issue.  It is possible that we don't provide secondary-arch devel packages (they would still be in the base collection, if the decision to drop the support was made later).  I'm moving this problem to RCM in hope they can shed some light on this.

Comment 11 Scott Dial 2013-08-22 23:52:36 UTC
Except that you are providing an old secondary-arch devel package for boost-devel. You can see above that the confusing conflicts are the result of the only boost-devel.i686 package available being boost-devel-1.41.0-11.el6.i686, which has a hard dependency on boost = 1.41.0-11.el6. So, the upgrade path was broken, which is why I came here confused, because I knew 1.41.0-17.el6_4 was supposed to solve my problem.

I am confused why the i386 isn't strictly a subset of the x86_64 repo. I find that confusing and startling that it's possible for it to not be. In particular, because I don't see how I can subscribe a RHEL 6 development machine to the i386 channels to fill in the gaps that are missing, in order to cross-compile.

Comment 12 Scott Dial 2013-08-23 00:56:36 UTC
To add more info here: even if boost-devel.i686 was available, it requires boost-python.i686. boost-python.i686 will drag in python-libs.i686, which is an old version too:

# yum list --showduplicates python-libs.i686
Available Packages
python-libs.i686            2.6.5-3.el6                rhel-x86_64-workstation-6
python-libs.i686            2.6.5-3.el6_0.2            rhel-x86_64-workstation-6

Trying to install python-libs-2.6.5-3.el6 causes a version conflict for Python.

I double-checked this stuff on Sceintific Linux 6, and this all just works there (although they are some versions behind). I don't understand this.

I'm working around this at my company by putting these i386 packages into our Yum repo for x86_64, but that's ugly and it makes me unhappy.

Comment 13 Petr Machata 2013-08-23 08:53:24 UTC
I'm flipping this back to boost.  Let's track your issue in a separate bug 1000337.


Note You need to log in before you can comment on or make changes to this bug.