You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Antoine Pitrou (Jira)" <ji...@apache.org> on 2020/02/19 14:25:00 UTC

[jira] [Closed] (ARROW-4868) [C++][Gandiva] Build fails with system Boost on Ubuntu Trusty 14.04

     [ https://issues.apache.org/jira/browse/ARROW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Antoine Pitrou closed ARROW-4868.
---------------------------------
    Resolution: Won't Fix

I think 14.04 is old enough that we don't care about this, especially as we minimized our Boost dependency surface.

> [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
>            Priority: Major
>
> 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
(v8.3.4#803005)