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

[C++] Boost version required by Gandiva is too new for Ubuntu 14.04

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.12.0
    • C++
    • None

    Description

      I encountered this bug when testing a non-conda-toolchain build on Ubuntu Trusty

      [ 56%] Building CXX object src/gandiva/CMakeFiles/lru_cache_test.dir/lru_cache_test.cc.o
      /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc: In member function ‘virtual void gandiva::TestLruCache_TestLruBehavior_Test::TestBody()’:
      /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc:62:188: error: ‘class boost::optional<std::basic_string<char> >’ has no member named ‘value’
         ASSERT_EQ(cache_.get(TestCacheKey(1)).value(), "hello");
                                                                                                                                                                                                  ^
      /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc:62:203: error: template argument 1 is invalid
         ASSERT_EQ(cache_.get(TestCacheKey(1)).value(), "hello");
                                                                                                                                                                                                                 ^
      /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc:62:294: error: ‘class boost::optional<std::basic_string<char> >’ has no member named ‘value’
         ASSERT_EQ(cache_.get(TestCacheKey(1)).value(), "hello");
                                                                                                                                                                                                                                                                                                            ^
      make[2]: *** [src/gandiva/CMakeFiles/lru_cache_test.dir/lru_cache_test.cc.o] Error 1
      make[1]: *** [src/gandiva/CMakeFiles/lru_cache_test.dir/all] Error 2
      make: *** [all] Error 2
      

      Abseil has a std::optional backport, so we could switch from using boost::optional if/when we start using Abseil https://github.com/abseil/abseil-cpp/blob/master/absl/types/optional.h

      Attachments

        Activity

          People

            wesm Wes McKinney
            wesm Wes McKinney
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: