You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by Rares Vernica <rv...@gmail.com> on 2021/09/28 04:38:28 UTC
C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Hello,
I'm still struggling to build Arrow with Parquet. I compiled Thrift myself
but I'm running into dependency issues with Boost.
It looks like the Boost download URL provided in ThirdpartyToolchain.cmake
here
https://github.com/apache/arrow/blob/ef4e92982054fcc723729ab968296d799d3108dd/cpp/cmake_modules/ThirdpartyToolchain.cmake#L405
links to GitHub Releases https://github.com/boostorg/boost/releases. The
.tar.gz provided there does not contain the Boost headers.
Cheers,
Rares
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Benson Muite <be...@emailplus.org>.
> Hmm, it should. Can you open a JIRA with the full build logs?
>
> In the meantime though, you can also install the Developer Toolset to
> get a much newer gcc version:
> https://www.softwarecollections.org/en/scls/rhscl/devtoolset-8/
>
> Regards
>
> Antoine.
>
>
Ticket created:
https://issues.apache.org/jira/browse/ARROW-14152
Will add logs.
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Antoine Pitrou <an...@python.org>.
On Tue, 28 Sep 2021 10:58:43 +0300
Benson Muite <be...@emailplus.org> wrote:
> On 9/28/21 10:47 AM, Antoine Pitrou wrote:
> >
> > Le 28/09/2021 à 09:41, Benson Muite a écrit :
> >> Sorry, second one should have -DARROW_BUILD_TESTS=ON instead of
> >> -DARROW_BUILD_TESTS=OFF
> >
> > I see. What is the gcc version?
> 4.8 (will need to rebuild to get minor version) is default on Cent OS 7
> - expect this should be adequate as indicate at
> https://arrow.apache.org/docs/developers/cpp/building.html#system-setup
> though maybe some newer C++ features are missing and this needs to be
> updated.
Hmm, it should. Can you open a JIRA with the full build logs?
In the meantime though, you can also install the Developer Toolset to
get a much newer gcc version:
https://www.softwarecollections.org/en/scls/rhscl/devtoolset-8/
Regards
Antoine.
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Benson Muite <be...@emailplus.org>.
On 9/28/21 10:47 AM, Antoine Pitrou wrote:
>
> Le 28/09/2021 à 09:41, Benson Muite a écrit :
>> Sorry, second one should have -DARROW_BUILD_TESTS=ON instead of
>> -DARROW_BUILD_TESTS=OFF
>
> I see. What is the gcc version?
4.8 (will need to rebuild to get minor version) is default on Cent OS 7
- expect this should be adequate as indicate at
https://arrow.apache.org/docs/developers/cpp/building.html#system-setup
though maybe some newer C++ features are missing and this needs to be
updated.
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Antoine Pitrou <an...@python.org>.
Le 28/09/2021 à 09:41, Benson Muite a écrit :
> Sorry, second one should have -DARROW_BUILD_TESTS=ON instead of
> -DARROW_BUILD_TESTS=OFF
I see. What is the gcc version?
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Benson Muite <be...@emailplus.org>.
On 9/28/21 10:36 AM, Antoine Pitrou wrote:
>
> Hi,
>
> Le 28/09/2021 à 09:25, Benson Muite a écrit :
>> Maybe helpful to create a ticket at:
>> https://issues.apache.org/jira/projects/ARROW
>> for more documentation on setup with Cent OS 7
>>
>> Currently trying this on commit 1f481d9 (tagged as
>> apache-arrow-6.0.0.dev) - having some trouble with current head of the
>> development repository. Installed
>>
>> yum install gcc-c++ gcc bison flex git python3 make
>> yum groupinstall "Development tools"
>>
>> Then build and install a recent version of cmake from source (tried with
>> 3.21.3).
>>
>> Then
>>
>> git clone https://github.com/apache/arrow.git
>> cd arrow
>> git submodule init
>> git submodule update
>> export PARQUET_TEST_DATA="${PWD}/cpp/submodules/parquet-testing/data"
>> export ARROW_TEST_DATA="${PWD}/testing/data"
>> git checkout 1f481d9
>> mkdir build
>> cd build
>> PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
>> -DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
>> -DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
>>
>> This seems to build.
>>
>> When using,
>>
>> PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
>> -DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
>> -DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
>>
>> am investigating why the build fails with: [...]
>
> I don't understand: is there a difference between the two cmake commands
> above?
>
Sorry, second one should have -DARROW_BUILD_TESTS=ON instead of
-DARROW_BUILD_TESTS=OFF
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Antoine Pitrou <an...@python.org>.
Hi,
Le 28/09/2021 à 09:25, Benson Muite a écrit :
> Maybe helpful to create a ticket at:
> https://issues.apache.org/jira/projects/ARROW
> for more documentation on setup with Cent OS 7
>
> Currently trying this on commit 1f481d9 (tagged as
> apache-arrow-6.0.0.dev) - having some trouble with current head of the
> development repository. Installed
>
> yum install gcc-c++ gcc bison flex git python3 make
> yum groupinstall "Development tools"
>
> Then build and install a recent version of cmake from source (tried with
> 3.21.3).
>
> Then
>
> git clone https://github.com/apache/arrow.git
> cd arrow
> git submodule init
> git submodule update
> export PARQUET_TEST_DATA="${PWD}/cpp/submodules/parquet-testing/data"
> export ARROW_TEST_DATA="${PWD}/testing/data"
> git checkout 1f481d9
> mkdir build
> cd build
> PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
> -DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
> -DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
>
> This seems to build.
>
> When using,
>
> PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
> -DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
> -DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
>
> am investigating why the build fails with: [...]
I don't understand: is there a difference between the two cmake commands
above?
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Benson Muite <be...@emailplus.org>.
The lines
> mkdir build
> cd build
should be
mkdir cpp/build
cd cpp/build
Let me know if other configurations/bindings are needed.
On 9/28/21 10:25 AM, Benson Muite wrote:
> Maybe helpful to create a ticket at:
> https://issues.apache.org/jira/projects/ARROW
> for more documentation on setup with Cent OS 7
>
> Currently trying this on commit 1f481d9 (tagged as
> apache-arrow-6.0.0.dev) - having some trouble with current head of the
> development repository. Installed
>
> yum install gcc-c++ gcc bison flex git python3 make
> yum groupinstall "Development tools"
>
> Then build and install a recent version of cmake from source (tried with
> 3.21.3).
>
> Then
>
> git clone https://github.com/apache/arrow.git
> cd arrow
> git submodule init
> git submodule update
> export PARQUET_TEST_DATA="${PWD}/cpp/submodules/parquet-testing/data"
> export ARROW_TEST_DATA="${PWD}/testing/data"
> git checkout 1f481d9
> mkdir build
> cd build
> PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
> -DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
> -DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
>
> This seems to build.
>
> When using,
>
> PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
> -DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
> -DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
>
> am investigating why the build fails with:
>
> In file included from
> /root/arrow/cpp/src/arrow/util/reflection_test.cc:23:0:
> /root/arrow/cpp/src/arrow/util/enum.h: In instantiation of ‘static
> constexpr bool arrow::EnumStrings<N>::assert_count() [with int M = 1;
> int N = 3]’:
> /root/arrow/cpp/src/arrow/util/enum.h:57:28: required from ‘constexpr
> arrow::EnumStrings<N>::EnumStrings(const Strs& ...) [with Strs =
> {testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >}; int N = 3]’
> /usr/include/c++/4.8.2/type_traits:1305:35: required by substitution
> of ‘template<class _From1, class _To1> static decltype
> ((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one()))
> std::__is_convertible_helper<_From, _To, false>::__test(int) [with
> _From1 = _From1; _To1 = _To1; _From =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >; _To = const arrow::EnumStrings<3>&] [with
> _From1 =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >; _To1 = const arrow::EnumStrings<3>&]’
> /usr/include/c++/4.8.2/type_traits:1312:50: required from ‘constexpr
> const bool
> std::__is_convertible_helper<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >, const arrow::EnumStrings<3>&, false>::value’
> /usr/include/c++/4.8.2/type_traits:1317:12: required from ‘struct
> std::is_convertible<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >, const arrow::EnumStrings<3>&>’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:137:48:
> required from ‘static testing::Matcher<T>
> testing::internal::MatcherCastImpl<T, M>::Cast(const M&) [with T = const
> arrow::EnumStrings<3>&; M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >]’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:260:78:
> required from ‘static testing::Matcher<T>
> testing::SafeMatcherCastImpl<T>::Cast(const M&) [with M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >; T = const arrow::EnumStrings<3>&]’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:298:58:
> required from ‘testing::Matcher<T> testing::SafeMatcherCast(const M&)
> [with T = const arrow::EnumStrings<3>&; M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >]’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:1313:73:
> required from ‘testing::AssertionResult
> testing::internal::PredicateFormatterFromMatcher<M>::operator()(const
> char*, const T&) const [with T = arrow::EnumStrings<3>; M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >]’
> /root/arrow/cpp/src/arrow/util/reflection_test.cc:249:3: required from
> here
> /root/arrow/cpp/src/arrow/util/enum.h:51:5: error: static assertion
> failed: Incorrect number of enum strings provided
> static_assert(M == N, "Incorrect number of enum strings provided");
> ^
> /root/arrow/cpp/src/arrow/util/enum.h: In instantiation of ‘constexpr
> arrow::EnumStrings<N>::EnumStrings(const Strs& ...) [with Strs =
> {testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >}; int N = 3]’:
> /usr/include/c++/4.8.2/type_traits:1305:35: required by substitution
> of ‘template<class _From1, class _To1> static decltype
> ((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one()))
> std::__is_convertible_helper<_From, _To, false>::__test(int) [with
> _From1 = _From1; _To1 = _To1; _From =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >; _To = const arrow::EnumStrings<3>&] [with
> _From1 =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >; _To1 = const arrow::EnumStrings<3>&]’
> /usr/include/c++/4.8.2/type_traits:1312:50: required from ‘constexpr
> const bool
> std::__is_convertible_helper<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >, const arrow::EnumStrings<3>&, false>::value’
> /usr/include/c++/4.8.2/type_traits:1317:12: required from ‘struct
> std::is_convertible<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >, const arrow::EnumStrings<3>&>’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:137:48:
> required from ‘static testing::Matcher<T>
> testing::internal::MatcherCastImpl<T, M>::Cast(const M&) [with T = const
> arrow::EnumStrings<3>&; M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >]’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:260:78:
> required from ‘static testing::Matcher<T>
> testing::SafeMatcherCastImpl<T>::Cast(const M&) [with M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >; T = const arrow::EnumStrings<3>&]’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:298:58:
> required from ‘testing::Matcher<T> testing::SafeMatcherCast(const M&)
> [with T = const arrow::EnumStrings<3>&; M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >]’
> /root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:1313:73:
> required from ‘testing::AssertionResult
> testing::internal::PredicateFormatterFromMatcher<M>::operator()(const
> char*, const T&) const [with T = arrow::EnumStrings<3>; M =
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >]’
> /root/arrow/cpp/src/arrow/util/reflection_test.cc:249:3: required from
> here
> /root/arrow/cpp/src/arrow/util/enum.h:57:85: error: no matching function
> for call to
> ‘nonstd::sv_lite::basic_string_view<char>::basic_string_view(const
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >&)’
> : dummy_{assert_count<sizeof...(Strs)>()},
> strings_{util::string_view(strs)...} {}
>
> ^
> /root/arrow/cpp/src/arrow/util/enum.h:57:85: note: candidates are:
> In file included from /root/arrow/cpp/src/arrow/util/string_view.h:25:0,
> from /root/arrow/cpp/src/arrow/buffer.h:31,
> from /root/arrow/cpp/src/arrow/array/data.h:26,
> from /root/arrow/cpp/src/arrow/array/array_base.h:26,
> from /root/arrow/cpp/src/arrow/array/builder_binary.h:30,
> from /root/arrow/cpp/src/arrow/testing/gtest_util.h:33,
> from /root/arrow/cpp/src/arrow/testing/future_util.h:20,
> from /root/arrow/cpp/src/arrow/testing/matchers.h:24,
> from
> /root/arrow/cpp/src/arrow/util/reflection_test.cc:22:
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:914:5: note:
> template<class Allocator> nonstd::sv_lite::basic_string_view<CharT,
> Traits>::basic_string_view(const std::basic_string<CharT, Traits,
> Allocator>&)
> basic_string_view( std::basic_string<CharT, Traits, Allocator>
> const & s ) nssv_noexcept
> ^
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:914:5: note: template
> argument deduction/substitution failed:
> In file included from
> /root/arrow/cpp/src/arrow/util/reflection_test.cc:23:0:
> /root/arrow/cpp/src/arrow/util/enum.h:57:85: note: ‘const
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >’ is not derived from ‘const
> std::basic_string<char, std::char_traits<char>, Allocator>’
> : dummy_{assert_count<sizeof...(Strs)>()},
> strings_{util::string_view(strs)...} {}
>
> ^
> In file included from /root/arrow/cpp/src/arrow/util/string_view.h:25:0,
> from /root/arrow/cpp/src/arrow/buffer.h:31,
> from /root/arrow/cpp/src/arrow/array/data.h:26,
> from /root/arrow/cpp/src/arrow/array/array_base.h:26,
> from /root/arrow/cpp/src/arrow/array/builder_binary.h:30,
> from /root/arrow/cpp/src/arrow/testing/gtest_util.h:33,
> from /root/arrow/cpp/src/arrow/testing/future_util.h:20,
> from /root/arrow/cpp/src/arrow/testing/matchers.h:24,
> from
> /root/arrow/cpp/src/arrow/util/reflection_test.cc:22:
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:502:20: note:
> constexpr nonstd::sv_lite::basic_string_view<CharT,
> Traits>::basic_string_view(const CharT*) [with CharT = char; Traits =
> std::char_traits<char>]
> nssv_constexpr basic_string_view( CharT const * s) nssv_noexcept
> // non-standard noexcept
> ^
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:502:20: note: no
> known conversion for argument 1 from ‘const
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >’ to ‘const char*’
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:497:20: note:
> constexpr nonstd::sv_lite::basic_string_view<CharT,
> Traits>::basic_string_view(const CharT*,
> nonstd::sv_lite::basic_string_view<CharT, Traits>::size_type) [with
> CharT = char; Traits = std::char_traits<char>;
> nonstd::sv_lite::basic_string_view<CharT, Traits>::size_type = long
> unsigned int]
> nssv_constexpr basic_string_view( CharT const * s, size_type count
> ) nssv_noexcept // non-standard noexcept
> ^
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:497:20: note:
> candidate expects 2 arguments, 1 provided
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:489:20: note:
> constexpr nonstd::sv_lite::basic_string_view<CharT,
> Traits>::basic_string_view(const
> nonstd::sv_lite::basic_string_view<CharT, Traits>&) [with CharT = char;
> Traits = std::char_traits<char>]
> nssv_constexpr basic_string_view( basic_string_view const & other
> ) nssv_noexcept = default;
> ^
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:489:20: note: no
> known conversion for argument 1 from ‘const
> testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
> std::char_traits<char> > > >’ to ‘const
> nonstd::sv_lite::basic_string_view<char>&’
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:483:20: note:
> constexpr nonstd::sv_lite::basic_string_view<CharT,
> Traits>::basic_string_view() [with CharT = char; Traits =
> std::char_traits<char>]
> nssv_constexpr basic_string_view() nssv_noexcept
> ^
> /root/arrow/cpp/src/arrow/vendored/string_view.hpp:483:20: note:
> candidate expects 0 arguments, 1 provided
> cc1plus: warning: unrecognized command line option
> "-Wno-unknown-warning-option" [enabled by default]
> make[2]: ***
> [src/arrow/util/CMakeFiles/arrow-utility-test.dir/reflection_test.cc.o]
> Error 1
> make[1]: *** [src/arrow/util/CMakeFiles/arrow-utility-test.dir/all] Error 2
> make[1]: *** Waiting for unfinished jobs....
>
> On 9/28/21 8:17 AM, Rares Vernica wrote:
>> CentOS 7
>>
>> On Mon, Sep 27, 2021 at 10:06 PM Benson Muite
>> <be...@emailplus.org>
>> wrote:
>>
>>> Hi Rares,
>>> What operating system are you using?
>>> Benson
>>> On 9/28/21 7:38 AM, Rares Vernica wrote:
>>>> Hello,
>>>>
>>>> I'm still struggling to build Arrow with Parquet. I compiled Thrift
>>> myself
>>>> but I'm running into dependency issues with Boost.
>>>>
>>>> It looks like the Boost download URL provided in
>>> ThirdpartyToolchain.cmake
>>>> here
>>>>
>>> https://github.com/apache/arrow/blob/ef4e92982054fcc723729ab968296d799d3108dd/cpp/cmake_modules/ThirdpartyToolchain.cmake#L405
>>>
>>>> links to GitHub Releases https://github.com/boostorg/boost/releases.
>>>> The
>>>> .tar.gz provided there does not contain the Boost headers.
>>>>
>>>> Cheers,
>>>> Rares
>>>>
>>>
>>>
>>
>
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Benson Muite <be...@emailplus.org>.
Maybe helpful to create a ticket at:
https://issues.apache.org/jira/projects/ARROW
for more documentation on setup with Cent OS 7
Currently trying this on commit 1f481d9 (tagged as
apache-arrow-6.0.0.dev) - having some trouble with current head of the
development repository. Installed
yum install gcc-c++ gcc bison flex git python3 make
yum groupinstall "Development tools"
Then build and install a recent version of cmake from source (tried with
3.21.3).
Then
git clone https://github.com/apache/arrow.git
cd arrow
git submodule init
git submodule update
export PARQUET_TEST_DATA="${PWD}/cpp/submodules/parquet-testing/data"
export ARROW_TEST_DATA="${PWD}/testing/data"
git checkout 1f481d9
mkdir build
cd build
PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
-DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
-DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
This seems to build.
When using,
PATH/TO/INSTALLED/cmake .. -DARROW_PARQUET=ON -DARROW_COMPUTE=ON
-DARROW_CSV=ON -DCMAKE_BUILD_TYPE=Release -DARROW_BUILD_TESTS=OFF
-DThrift_SOURCE=BUNDLED -DPARQUET_REQUIRE_ENCRYPTION=ON
am investigating why the build fails with:
In file included from
/root/arrow/cpp/src/arrow/util/reflection_test.cc:23:0:
/root/arrow/cpp/src/arrow/util/enum.h: In instantiation of ‘static
constexpr bool arrow::EnumStrings<N>::assert_count() [with int M = 1;
int N = 3]’:
/root/arrow/cpp/src/arrow/util/enum.h:57:28: required from ‘constexpr
arrow::EnumStrings<N>::EnumStrings(const Strs& ...) [with Strs =
{testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >}; int N = 3]’
/usr/include/c++/4.8.2/type_traits:1305:35: required by substitution
of ‘template<class _From1, class _To1> static decltype
((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one()))
std::__is_convertible_helper<_From, _To, false>::__test(int) [with
_From1 = _From1; _To1 = _To1; _From =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >; _To = const arrow::EnumStrings<3>&] [with
_From1 =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >; _To1 = const arrow::EnumStrings<3>&]’
/usr/include/c++/4.8.2/type_traits:1312:50: required from ‘constexpr
const bool
std::__is_convertible_helper<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >, const arrow::EnumStrings<3>&, false>::value’
/usr/include/c++/4.8.2/type_traits:1317:12: required from ‘struct
std::is_convertible<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >, const arrow::EnumStrings<3>&>’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:137:48:
required from ‘static testing::Matcher<T>
testing::internal::MatcherCastImpl<T, M>::Cast(const M&) [with T = const
arrow::EnumStrings<3>&; M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >]’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:260:78:
required from ‘static testing::Matcher<T>
testing::SafeMatcherCastImpl<T>::Cast(const M&) [with M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >; T = const arrow::EnumStrings<3>&]’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:298:58:
required from ‘testing::Matcher<T> testing::SafeMatcherCast(const M&)
[with T = const arrow::EnumStrings<3>&; M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >]’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:1313:73:
required from ‘testing::AssertionResult
testing::internal::PredicateFormatterFromMatcher<M>::operator()(const
char*, const T&) const [with T = arrow::EnumStrings<3>; M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >]’
/root/arrow/cpp/src/arrow/util/reflection_test.cc:249:3: required from
here
/root/arrow/cpp/src/arrow/util/enum.h:51:5: error: static assertion
failed: Incorrect number of enum strings provided
static_assert(M == N, "Incorrect number of enum strings provided");
^
/root/arrow/cpp/src/arrow/util/enum.h: In instantiation of ‘constexpr
arrow::EnumStrings<N>::EnumStrings(const Strs& ...) [with Strs =
{testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >}; int N = 3]’:
/usr/include/c++/4.8.2/type_traits:1305:35: required by substitution
of ‘template<class _From1, class _To1> static decltype
((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one()))
std::__is_convertible_helper<_From, _To, false>::__test(int) [with
_From1 = _From1; _To1 = _To1; _From =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >; _To = const arrow::EnumStrings<3>&] [with
_From1 =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >; _To1 = const arrow::EnumStrings<3>&]’
/usr/include/c++/4.8.2/type_traits:1312:50: required from ‘constexpr
const bool
std::__is_convertible_helper<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >, const arrow::EnumStrings<3>&, false>::value’
/usr/include/c++/4.8.2/type_traits:1317:12: required from ‘struct
std::is_convertible<testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >, const arrow::EnumStrings<3>&>’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:137:48:
required from ‘static testing::Matcher<T>
testing::internal::MatcherCastImpl<T, M>::Cast(const M&) [with T = const
arrow::EnumStrings<3>&; M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >]’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:260:78:
required from ‘static testing::Matcher<T>
testing::SafeMatcherCastImpl<T>::Cast(const M&) [with M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >; T = const arrow::EnumStrings<3>&]’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:298:58:
required from ‘testing::Matcher<T> testing::SafeMatcherCast(const M&)
[with T = const arrow::EnumStrings<3>&; M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >]’
/root/arrow/cpp/release/googletest_ep-prefix/include/gmock/gmock-matchers.h:1313:73:
required from ‘testing::AssertionResult
testing::internal::PredicateFormatterFromMatcher<M>::operator()(const
char*, const T&) const [with T = arrow::EnumStrings<3>; M =
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >]’
/root/arrow/cpp/src/arrow/util/reflection_test.cc:249:3: required from
here
/root/arrow/cpp/src/arrow/util/enum.h:57:85: error: no matching function
for call to
‘nonstd::sv_lite::basic_string_view<char>::basic_string_view(const
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >&)’
: dummy_{assert_count<sizeof...(Strs)>()},
strings_{util::string_view(strs)...} {}
^
/root/arrow/cpp/src/arrow/util/enum.h:57:85: note: candidates are:
In file included from /root/arrow/cpp/src/arrow/util/string_view.h:25:0,
from /root/arrow/cpp/src/arrow/buffer.h:31,
from /root/arrow/cpp/src/arrow/array/data.h:26,
from /root/arrow/cpp/src/arrow/array/array_base.h:26,
from /root/arrow/cpp/src/arrow/array/builder_binary.h:30,
from /root/arrow/cpp/src/arrow/testing/gtest_util.h:33,
from /root/arrow/cpp/src/arrow/testing/future_util.h:20,
from /root/arrow/cpp/src/arrow/testing/matchers.h:24,
from /root/arrow/cpp/src/arrow/util/reflection_test.cc:22:
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:914:5: note:
template<class Allocator> nonstd::sv_lite::basic_string_view<CharT,
Traits>::basic_string_view(const std::basic_string<CharT, Traits,
Allocator>&)
basic_string_view( std::basic_string<CharT, Traits, Allocator>
const & s ) nssv_noexcept
^
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:914:5: note:
template argument deduction/substitution failed:
In file included from
/root/arrow/cpp/src/arrow/util/reflection_test.cc:23:0:
/root/arrow/cpp/src/arrow/util/enum.h:57:85: note: ‘const
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >’ is not derived from ‘const
std::basic_string<char, std::char_traits<char>, Allocator>’
: dummy_{assert_count<sizeof...(Strs)>()},
strings_{util::string_view(strs)...} {}
^
In file included from /root/arrow/cpp/src/arrow/util/string_view.h:25:0,
from /root/arrow/cpp/src/arrow/buffer.h:31,
from /root/arrow/cpp/src/arrow/array/data.h:26,
from /root/arrow/cpp/src/arrow/array/array_base.h:26,
from /root/arrow/cpp/src/arrow/array/builder_binary.h:30,
from /root/arrow/cpp/src/arrow/testing/gtest_util.h:33,
from /root/arrow/cpp/src/arrow/testing/future_util.h:20,
from /root/arrow/cpp/src/arrow/testing/matchers.h:24,
from /root/arrow/cpp/src/arrow/util/reflection_test.cc:22:
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:502:20: note:
constexpr nonstd::sv_lite::basic_string_view<CharT,
Traits>::basic_string_view(const CharT*) [with CharT = char; Traits =
std::char_traits<char>]
nssv_constexpr basic_string_view( CharT const * s) nssv_noexcept
// non-standard noexcept
^
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:502:20: note: no
known conversion for argument 1 from ‘const
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >’ to ‘const char*’
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:497:20: note:
constexpr nonstd::sv_lite::basic_string_view<CharT,
Traits>::basic_string_view(const CharT*,
nonstd::sv_lite::basic_string_view<CharT, Traits>::size_type) [with
CharT = char; Traits = std::char_traits<char>;
nonstd::sv_lite::basic_string_view<CharT, Traits>::size_type = long
unsigned int]
nssv_constexpr basic_string_view( CharT const * s, size_type count
) nssv_noexcept // non-standard noexcept
^
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:497:20: note:
candidate expects 2 arguments, 1 provided
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:489:20: note:
constexpr nonstd::sv_lite::basic_string_view<CharT,
Traits>::basic_string_view(const
nonstd::sv_lite::basic_string_view<CharT, Traits>&) [with CharT = char;
Traits = std::char_traits<char>]
nssv_constexpr basic_string_view( basic_string_view const & other
) nssv_noexcept = default;
^
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:489:20: note: no
known conversion for argument 1 from ‘const
testing::internal::ElementsAreMatcher<std::tuple<nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> >, nonstd::sv_lite::basic_string_view<char,
std::char_traits<char> > > >’ to ‘const
nonstd::sv_lite::basic_string_view<char>&’
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:483:20: note:
constexpr nonstd::sv_lite::basic_string_view<CharT,
Traits>::basic_string_view() [with CharT = char; Traits =
std::char_traits<char>]
nssv_constexpr basic_string_view() nssv_noexcept
^
/root/arrow/cpp/src/arrow/vendored/string_view.hpp:483:20: note:
candidate expects 0 arguments, 1 provided
cc1plus: warning: unrecognized command line option
"-Wno-unknown-warning-option" [enabled by default]
make[2]: ***
[src/arrow/util/CMakeFiles/arrow-utility-test.dir/reflection_test.cc.o]
Error 1
make[1]: *** [src/arrow/util/CMakeFiles/arrow-utility-test.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
On 9/28/21 8:17 AM, Rares Vernica wrote:
> CentOS 7
>
> On Mon, Sep 27, 2021 at 10:06 PM Benson Muite <be...@emailplus.org>
> wrote:
>
>> Hi Rares,
>> What operating system are you using?
>> Benson
>> On 9/28/21 7:38 AM, Rares Vernica wrote:
>>> Hello,
>>>
>>> I'm still struggling to build Arrow with Parquet. I compiled Thrift
>> myself
>>> but I'm running into dependency issues with Boost.
>>>
>>> It looks like the Boost download URL provided in
>> ThirdpartyToolchain.cmake
>>> here
>>>
>> https://github.com/apache/arrow/blob/ef4e92982054fcc723729ab968296d799d3108dd/cpp/cmake_modules/ThirdpartyToolchain.cmake#L405
>>> links to GitHub Releases https://github.com/boostorg/boost/releases. The
>>> .tar.gz provided there does not contain the Boost headers.
>>>
>>> Cheers,
>>> Rares
>>>
>>
>>
>
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Rares Vernica <rv...@gmail.com>.
CentOS 7
On Mon, Sep 27, 2021 at 10:06 PM Benson Muite <be...@emailplus.org>
wrote:
> Hi Rares,
> What operating system are you using?
> Benson
> On 9/28/21 7:38 AM, Rares Vernica wrote:
> > Hello,
> >
> > I'm still struggling to build Arrow with Parquet. I compiled Thrift
> myself
> > but I'm running into dependency issues with Boost.
> >
> > It looks like the Boost download URL provided in
> ThirdpartyToolchain.cmake
> > here
> >
> https://github.com/apache/arrow/blob/ef4e92982054fcc723729ab968296d799d3108dd/cpp/cmake_modules/ThirdpartyToolchain.cmake#L405
> > links to GitHub Releases https://github.com/boostorg/boost/releases. The
> > .tar.gz provided there does not contain the Boost headers.
> >
> > Cheers,
> > Rares
> >
>
>
Re: C++ Boost GitHub URL in ThirdpartyToolchain.cmake
Posted by Benson Muite <be...@emailplus.org>.
Hi Rares,
What operating system are you using?
Benson
On 9/28/21 7:38 AM, Rares Vernica wrote:
> Hello,
>
> I'm still struggling to build Arrow with Parquet. I compiled Thrift myself
> but I'm running into dependency issues with Boost.
>
> It looks like the Boost download URL provided in ThirdpartyToolchain.cmake
> here
> https://github.com/apache/arrow/blob/ef4e92982054fcc723729ab968296d799d3108dd/cpp/cmake_modules/ThirdpartyToolchain.cmake#L405
> links to GitHub Releases https://github.com/boostorg/boost/releases. The
> .tar.gz provided there does not contain the Boost headers.
>
> Cheers,
> Rares
>