[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: opal update
On Nov 20, 5:16pm, Greg Troxel wrote:
} Rhialto <rhialto%falu.nl@localhost> writes:
} > On Mon 19 Nov 2018 at 21:38:35 -0800, John Nemeth wrote:
} >> On Nov 19, 10:08pm, Rhialto wrote:
} >> } My suspicion from your messages is that they might be fixed (at least
} >> } partially) with some options to force an older C++ dialect. auto_ptr is
} >> Any suggestions on what the options might be, or how to force
} >> it in pkgsrc?
} > The USE_LANGUAGES += c++ line can specify a few language versions. I
} > suspect that my compiler defaults to c++ 2003, at least then I got the
} > same error messages as I showed. With c++ 2011 I got more messages
} > involving auto_ptr<>.
} This is extremely messy. Trying to separate things out:
} USE_LANGUAGES is about declaring the the languages used so that the
} selected compiler will be able to support them. c++ means C++03.
} We may not be getting the "add --std" flags part right. Generally, an
} upstream program that needs a particular language standard should be
} testing for useng --std=foo with autoconf and adding the flags or
} failing, independently of pkgsrc. Certainly a package could build
} some code that is C++03 and some that is C++11 in the same package
} (perhaps different executables), and pkgsrc can't intuit that.
} Different compiler versions have different default langauge standards.
} I think this is a bug, which leads to programs not setting --std
} (perhaps because the author didn't need to on their box, because
} (making things up) they have gcc9 which defaults to c++14.
} > Or maybe it needs older versions? The bulk of my errors were about some
} > undefined method or other. But at least that should be fairly easy to
} > find, compared to those excessively long template errors.
} Look at the logs to see if there is --std=, always. That should be the
} primary mechanism to specify the language variant. The USE_LANGUAGES is
} really about forcing a compiler that can support the variant.
Grepping the source code, I don't find --std anywhere. However,
the last update I found was done back in June 2016. Unfortunately,
this appears to be abandonware, but I have somebody bugging me to
try to make it work.
I have discovered that a different person has taken over the
project and moved it from sourceware to github. I have placed
opal-3.10.15 along with a source tarball which can be dumped
/usr/pkgsrc/distfiles at ftp://pub/NetBSD/misc/jnemeth .
I have also put buildlogs there. This version still doesn't
compile, but autoptr is just giving warnings. The real problem
appears to be here:
/usr/pkgsrc/devel/opal-3.10.15/work/opal-3.10.15/src/im/msrp.cxx:838:28: error: cannot bind 'std::basic_ostream<char>' lvalue to 'std::basic_ostream<char>&&'
PStringStream str; str << ::setfill('\r') << mime.PrintContents(str);
In file included from /usr/include/g++/istream:39:0,
/usr/include/g++/ostream:574:5: note: candidate: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const unsigned char*)
operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s)
/usr/include/g++/ostream:574:5: note: template argument deduction/substitution failed:
However, see buildlog.error in case I snipped too much. Given this
new version and new information, any help would be appreciated.
}-- End of excerpt from Greg Troxel
Main Index |
Thread Index |