Uploaded image for project: 'Apache HAWQ'
  1. Apache HAWQ
  2. HAWQ-1572

Travis CI build failure on master. Thrift/boost incompatibility

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments


    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s:
    • Component/s: Build
    • Labels:



      The travis CI build is failing for master and new commits. The CI is erroring out with

      configure: error: thrift is required
      The command “./configure” failed and exited with 1 during .

      I was able to reproduce this issue and looking at the config.log it looks like it is failing at the line below while running a conftest.cpp -

      /usr/local/include/thrift/stdcxx.h:32:10: fatal error: 'boost/tr1/functional.hpp' file not found

      The root cause of the problem is compatibility of thrift 0.11 with boost 1.65.1 . Travis recently upgraded there xcode to 9.2 and list of default packages now contains boost 1.65.1 and thrift 0.11.

      Thrift uses stdcxx.h which includes boost/tr1/functional.hpp library. The support for tr1 has been removed in boost 1.65, see here under topic “Removed Libraries”.
      Since tr1 library is no longer present in boost 1.65, this causes thrift to fail and eventually ./configure fails

      As a solution I recommend that we uninstall boost 1.65 and install boost 1.60(the last compatible build with thrift).

      I am not sure if this is a problem with thrift that they are not yet compatible with boost 1.65 yet or a problem with travis ci that they have included two incompatible versions. Will love to hear community's thoughts on it.




            • Assignee:
              outofmemory Shubham Sharma
              outofmemory Shubham Sharma


              • Created:

                Issue deployment