Bug 621631

Summary: QuantLib doesn't compile because of broken boost header file
Product: [Fedora] Fedora Reporter: Tom "spot" Callaway <tcallawa>
Component: boostAssignee: Benjamin Kosnik <bkoz>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 14CC: bkoz, denis.arnaud_fedora, mnewsome, pertusus, pmachata
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: boost-1.44.0-0.5.fc14 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-08-12 07:13:32 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Fix broken boost header none

Description Tom "spot" Callaway 2010-08-05 17:27:41 UTC
QuantLib (one of my packages) doesn't compile in f14 or rawhide:

g++ -DHAVE_CONFIG_H -I. -I. -I../../ql  -I../.. -I../.. -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpermissive  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c -o BermudanSwaption.o BermudanSwaption.cpp
In file included from /usr/include/boost/random/ranlux.hpp:20:0,
                 from ../../ql/math/randomnumbers/ranluxuniformrng.hpp:28,
                 from ../../ql/math/randomnumbers/all.hpp:18,
                 from ../../ql/math/all.hpp:34,
                 from ../../ql/quantlib.hpp:46,
                 from BermudanSwaption.cpp:22:
/usr/include/boost/random/subtract_with_carry.hpp: In member function 'void boost::random::subtract_with_carry<IntType, m, s, r, v>::seed(Gen&, typename boost::random::detail::disable_seed<SeedSeq>::type*)':
/usr/include/boost/random/subtract_with_carry.hpp:521:9: error: 'generator_seed_seq' is not a member of 'boost::random::detail'
/usr/include/boost/random/subtract_with_carry.hpp:521:39: error: expected primary-expression before '>' token
/usr/include/boost/random/subtract_with_carry.hpp:522:25: error: 'seq' was not declared in this scope
/usr/include/boost/random/subtract_with_carry.hpp: In member function 'void boost::random::subtract_with_carry_01<RealType, w, s, r, v>::seed(Gen&, typename boost::random::detail::disable_seed<SeedSeq>::type*)':
/usr/include/boost/random/subtract_with_carry.hpp:547:9: error: 'generator_seed_seq' is not a member of 'boost::random::detail'
/usr/include/boost/random/subtract_with_carry.hpp:547:39: error: expected primary-expression before '>' token
/usr/include/boost/random/subtract_with_carry.hpp:548:25: error: 'seq' was not declared in this scope
make[2]: *** [BermudanSwaption.o] Error 1

Full QuantLib build log is here:
http://koji.fedoraproject.org/koji/getfile?taskID=2379436&name=build.log

This is pretty simple to fix in boost, I've attached a patch. Please apply and push boost updates for f14/rawhide. (Alternately, if you want me to do it, just let me know.)

Comment 1 Tom "spot" Callaway 2010-08-05 17:28:27 UTC
Created attachment 436917 [details]
Fix broken boost header

Comment 2 Denis Arnaud 2010-08-06 09:32:02 UTC
(In reply to comment #0)
> This is pretty simple to fix in boost, I've attached a patch. Please apply and
> push boost updates for f14/rawhide. (Alternately, if you want me to do it, just
> let me know.)    
Do you know whether upstream has already patched it? Or has that patch been submitted upstream?
(I understand that that patch is harmless and simple, but it is to keep some consistency across delivered versions)

Comment 3 Denis Arnaud 2010-08-06 10:10:45 UTC
The patch has been applied in my cloned git repository: http://gitorious.org/boost/denisarnauds-zeuners-boost-cmake/commit/d596c8d5e8087c266984069f27b5e18da6daadb4
and a merge request has been created for upstream (http://gitorious.org/~zeuner/boost/zeuners-boost-cmake).

Koji builds are on-going:
* https://koji.fedoraproject.org/koji/buildinfo?buildID=188710 for Rawhide

Comment 4 Benjamin Kosnik 2010-08-06 12:52:13 UTC
Looks like the F15/rawhide build is done, Denis can you put this on F14 as well? I don't see these patches in boost-trunk, or in boost-bugzilla. 

It looks like there is some un-tested refactoring in boost's random support.

Comment 5 Fedora Update System 2010-08-06 16:09:17 UTC
boost-1.44.0-0.5.fc14 has been submitted as an update for Fedora 14.
http://admin.fedoraproject.org/updates/boost-1.44.0-0.5.fc14

Comment 6 Denis Arnaud 2010-08-06 16:26:06 UTC
(In reply to comment #4)
> Looks like the F15/rawhide build is done, Denis can you put this on F14 as
> well?

Done (see comment #5 above). Tom, could you try to rebuild the QuantLib package?


> I don't see these patches in boost-trunk, or in boost-bugzilla. 

You are right. The corresponding header file, namely boost/random/subtract_with_carry.hpp, is not patched in the Boost Subversion trunk: http://svn.boost.org/svn/boost/trunk/boost/random/subtract_with_carry.hpp
I'll try to propose that patch to someone of the Boost team.

Comment 7 Fedora Update System 2010-08-19 01:13:55 UTC
boost-1.44.0-0.5.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.