[Rivet] Build failed in Jenkins: Rivet-OSX32-HepMC-2.5 #665

Andy Buckley andy.buckley at ed.ac.uk
Mon Sep 19 16:04:25 BST 2011


On 19/09/11 14:19, Frank Siegert wrote:
> On 19/09/11 15:10, IPPP Hudson build system wrote:
>> /usr/include/c++/4.2.1/bits/ostream_insert.h: In function
>> 'std::basic_ostream<_CharT, _Traits>&
>> std::__ostream_insert(std::basic_ostream<_CharT, _Traits>&, const
>> _CharT*, std::streamsize) [with _CharT = char, _Traits =
>> std::char_traits<char>]':
>> /usr/include/c++/4.2.1/bits/basic_string.h:2414: instantiated from
>> 'std::basic_ostream<_CharT, _Traits>&
>> std::operator<<(std::basic_ostream<_CharT, _Traits>&, const
>> std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char,
>> _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]'
>> token.h:67: instantiated from here
>> /usr/include/c++/4.2.1/bits/ostream_insert.h:82: error: invalid use of
>> incomplete type 'struct std::basic_ostream<char,
>> std::char_traits<char> >'
>> /usr/include/c++/4.2.1/iosfwd:64: error: declaration of 'struct
>> std::basic_ostream<char, std::char_traits<char> >'
>
> According to [0] this seems to be solved by a change in system, while
> [1] claims it can be fixed by a change in the YAML build system. I'm not
> sure any of them helps us here, but wanted to check what others think
> before simply adding an apparently (?) missing #include <iostream>
> instead of <ios>?

I read http://code.google.com/p/yaml-cpp/issues/detail?id=68 as
saying that a change is needed in the code rather than just the yaml-cpp
build commands. The requested solution is to comment out the two lines 
that attempt to use the stream... so I think the proper solution *is* to 
add the #include <iostream>. Could you do that? Thanks :)

I don't know why this fix was apparently made back in mid-2010 and we 
still have the problem with our bundled version of yaml-cpp. Oh well, 
hopefully next time I update the YAML parser we won't have to repatch 
like this.

Andy

-- 
Dr Andy Buckley
SUPA Advanced Research Fellow
Particle Physics Experiment Group, University of Edinburgh

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



More information about the Rivet mailing list