Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-17406

[C++] Failing to build the C++ Lib with tests

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Information Provided
    • None
    • None
    • None

    Description

      When I followed the build guidelines as suggested on https://arrow.apache.org/docs/dev/developers/python.html,

       

      The build fails

      In file included from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/cpp_int.hpp:17,
                       from /home/kshiteej/Arrow/arrow/cpp/src/arrow/util/decimal_test.cc:29:
      /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/detail/standalone_config.hpp:25:7: error: #warning "The minimum language standard to use Boost.Math will be C++14 starting in July 2023 (Boost 1.82 release)" [-Werror=cpp]
         25 |  #    warning "The minimum language standard to use Boost.Math will be C++14 starting in July 2023 (Boost 1.82 release)"
            |       ^~~~~~~
      In file included from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/math/cstdfloat/cstdfloat_types.hpp:17,
                       from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/cstdfloat.hpp:18,
                       from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/detail/float128_functions.hpp:15,
                       from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/detail/fpclassify.hpp:13,
                       from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/detail/default_ops.hpp:15,
                       from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/detail/generic_interconvert.hpp:12,
                       from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/number.hpp:12,
                       from /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/multiprecision/cpp_int.hpp:19,
                       from /home/kshiteej/Arrow/arrow/cpp/src/arrow/util/decimal_test.cc:29:
      /home/kshiteej/.conda/envs/pyarrow-dev/include/boost/math/tools/config.hpp:23:6: error: #warning "The minimum language standard to use Boost.Math will be C++14 starting in July 2023 (Boost 1.82 release)" [-Werror=cpp]
         23 | #    warning "The minimum language standard to use Boost.Math will be C++14 starting in July 2023 (Boost 1.82 release)"
            |      ^~~~~~~
      cc1plus: all warnings being treated as errors
      make[2]: *** [src/arrow/util/CMakeFiles/arrow-utility-test.dir/build.make:202: src/arrow/util/CMakeFiles/arrow-utility-test.dir/decimal_test.cc.o] Error 1
      make[1]: *** [CMakeFiles/Makefile2:2305: src/arrow/util/CMakeFiles/arrow-utility-test.dir/all] Error 2
      make: *** [Makefile:146: all] Error 2 

      Looks like latest Boost version leads to warning (which is converted to error due to `-Werror`.

       

      Potential fix would be to pin the Boost version which does not raise this warning till the C++ lib supports C++14.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              kshitij12345 Kshiteej K
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 2.5h
                  2.5h