Hi All,
I downloaded Quantlib 1.5 and tried compiling it under Quantlib_vc10 and get the errors below. It seems the version of boost I have 1_51 is not compatible. 1_51 was okay for Quantlib 1.4.
Please, What version of boost should i be using.
Regards
Theo
c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> gaussian1dfloatfloatswaptionengine.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> gaussian1djamshidianswaptionengine.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> gaussian1dnonstandardswaptionengine.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> gaussian1dswaptionengine.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> gsr.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> gsrprocess.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> kahalesmilesection.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> markovfunctional.cpp
1> mfstateprocess.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> nonstandardswap.cpp
1> nonstandardswaption.cpp
1> smilesectionutils.cpp
1> extendedblackscholesprocess.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> extendedornsteinuhlenbeckprocess.cpp
1> vegastressedblackscholesprocess.cpp
1>c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(257): error C2665: 'boost::hash_value' : none of the 2 overloads could convert all the argument types
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(115): could be 'size_t boost::hash_value(std::type_index)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(160): or 'size_t boost::hash_value(const std::tr1::tuple<> &)'
1> while trying to match the argument list '(const QuantLib::TimeUnit)'
1> c:\program files\boost\boost_1_51\boost\functional\hash\extensions.hpp(256) : while compiling class template member function 'size_t boost::hash<T>::operator ()(const T &) const'
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\program files\boost\boost_1_51\boost\functional\hash\hash.hpp(219) : see reference to class template instantiation 'boost::hash<T>' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
1> c:\users\catherinechristopher\documents\quants\quants\quantlib-1.5\ql\experimental\models\gaussian1dmodel.hpp(183) : see reference to function template instantiation 'void boost::hash_combine<QuantLib::TimeUnit>(size_t &,const T &)' being compiled
1> with
1> [
1> T=QuantLib::TimeUnit
1> ]
------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
It seems that it's a problem specific to Boost 1.51: see <https://svn.boost.org/trac/boost/ticket/7437>. You can use any other version. Luigi On Thu, Feb 19, 2015 at 5:19 PM, Theo Boafo <[hidden email]> wrote:
------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
Hi Luigi,
Many thanks for your response, I tried boost 1_55 and it works.
Many thanks.
Regards
Theo
------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk _______________________________________________ QuantLib-dev mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
Free forum by Nabble | Edit this page |