Wes McKinney created ARROW-4868:
-----------------------------------

             Summary: [C++][Gandiva] Build fails with system Boost on Ubuntu 
Trusty 14.04
                 Key: ARROW-4868
                 URL: https://issues.apache.org/jira/browse/ARROW-4868
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++ - Gandiva
            Reporter: Wes McKinney
             Fix For: 0.14.0


It would be nice for things to work out of the box, but maybe not worth it. I 
can use vendored Boost for now

{code}
/usr/include/boost/functional/hash/extensions.hpp:269:20: error: no matching 
function for call to 'hash_value'
            return hash_value(val);
                   ^~~~~~~~~~
/usr/include/boost/functional/hash/hash.hpp:249:17: note: in instantiation of 
member function 'boost::hash<std::shared_ptr<gandiva::Configuration> 
>::operator()' requested here
        seed ^= hasher(v) + 0x9e3779b9 + (seed<<6) + (seed>>2);
                ^
/home/wesm/code/arrow/cpp/src/gandiva/filter_cache_key.h:40:12: note: in 
instantiation of function template specialization 
'boost::hash_combine<std::shared_ptr<gandiva::Configuration> >' requested here
    boost::hash_combine(result, configuration);
           ^
/usr/include/boost/functional/hash/extensions.hpp:70:17: note: candidate 
template ignored: could not match 'pair' against 'shared_ptr'
    std::size_t hash_value(std::pair<A, B> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:79:17: note: candidate 
template ignored: could not match 'vector' against 'shared_ptr'
    std::size_t hash_value(std::vector<T, A> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:85:17: note: candidate 
template ignored: could not match 'list' against 'shared_ptr'
    std::size_t hash_value(std::list<T, A> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:91:17: note: candidate 
template ignored: could not match 'deque' against 'shared_ptr'
    std::size_t hash_value(std::deque<T, A> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:97:17: note: candidate 
template ignored: could not match 'set' against 'shared_ptr'
    std::size_t hash_value(std::set<K, C, A> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:103:17: note: candidate 
template ignored: could not match 'multiset' against 'shared_ptr'
    std::size_t hash_value(std::multiset<K, C, A> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:109:17: note: candidate 
template ignored: could not match 'map' against 'shared_ptr'
    std::size_t hash_value(std::map<K, T, C, A> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:115:17: note: candidate 
template ignored: could not match 'multimap' against 'shared_ptr'
    std::size_t hash_value(std::multimap<K, T, C, A> const& v)
                ^
/usr/include/boost/functional/hash/extensions.hpp:121:17: note: candidate 
template ignored: could not match 'complex' against 'shared_ptr'
    std::size_t hash_value(std::complex<T> const& v)
                ^
/usr/include/boost/functional/hash/hash.hpp:187:57: note: candidate template 
ignored: substitution failure [with T = 
std::shared_ptr<gandiva::Configuration>]: no type named 'type' in 
'boost::hash_detail::basic_numbers<std::shared_ptr<gandiva::Configuration> >'
    typename boost::hash_detail::basic_numbers<T>::type hash_value(T v)
                                                   ~~~~ ^
/usr/include/boost/functional/hash/hash.hpp:193:56: note: candidate template 
ignored: substitution failure [with T = 
std::shared_ptr<gandiva::Configuration>]: no type named 'type' in 
'boost::hash_detail::long_numbers<std::shared_ptr<gandiva::Configuration> >'
    typename boost::hash_detail::long_numbers<T>::type hash_value(T v)
                                                  ~~~~ ^
/usr/include/boost/functional/hash/hash.hpp:199:57: note: candidate template 
ignored: substitution failure [with T = 
std::shared_ptr<gandiva::Configuration>]: no type named 'type' in 
'boost::hash_detail::ulong_numbers<std::shared_ptr<gandiva::Configuration> >'
    typename boost::hash_detail::ulong_numbers<T>::type hash_value(T v)
                                                   ~~~~ ^
/usr/include/boost/functional/hash/hash.hpp:205:31: note: candidate template 
ignored: disabled by 'enable_if' [with T = 
std::shared_ptr<gandiva::Configuration>]
    typename boost::enable_if<boost::is_enum<T>, std::size_t>::type
                              ^
/usr/include/boost/functional/hash/hash.hpp:213:36: note: candidate template 
ignored: could not match 'T *const' against 'const 
std::shared_ptr<gandiva::Configuration>'
    template <class T> std::size_t hash_value(T* const& v)
                                   ^
/usr/include/boost/functional/hash/hash.hpp:306:24: note: candidate template 
ignored: could not match 'const T [N]' against 'const 
std::shared_ptr<gandiva::Configuration>'
    inline std::size_t hash_value(const T (&x)[N])
                       ^
/usr/include/boost/functional/hash/hash.hpp:312:24: note: candidate template 
ignored: could not match 'T [N]' against 'const 
std::shared_ptr<gandiva::Configuration>'
    inline std::size_t hash_value(T (&x)[N])
                       ^
/usr/include/boost/functional/hash/hash.hpp:319:24: note: candidate template 
ignored: could not match 'basic_string' against 'shared_ptr'
    inline std::size_t hash_value(
                       ^
/usr/include/boost/functional/hash/hash.hpp:326:57: note: candidate template 
ignored: substitution failure [with T = 
std::shared_ptr<gandiva::Configuration>]: no type named 'type' in 
'boost::hash_detail::float_numbers<std::shared_ptr<gandiva::Configuration> >'
    typename boost::hash_detail::float_numbers<T>::type hash_value(T v)
                                                   ~~~~ ^
1 error generated.
make[2]: *** [src/gandiva/CMakeFiles/gandiva_objlib.dir/filter.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to