Shubham Sharma created HAWQ-1572: ------------------------------------ Summary: Travis CI build failure on master. Thrift/boost incompatibility Key: HAWQ-1572 URL: https://issues.apache.org/jira/browse/HAWQ-1572 Project: Apache HAWQ Issue Type: Bug Components: Build Reporter: Shubham Sharma Assignee: Radar Lei
Hi, The travis CI build is failing for master and new commits. The CI is erroring out with {code} configure: error: thrift is required The command “./configure” failed and exited with 1 during . {code} 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 - {code} /usr/local/include/thrift/stdcxx.h:32:10: fatal error: 'boost/tr1/functional.hpp' file not found {code} 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|https://github.com/apache/thrift/blob/master/lib/cpp/src/thrift/stdcxx.h] which includes boost/tr1/functional.hpp library. The support for tr1 has been removed in boost 1.65, see [here|http://www.boost.org/users/history/version_1_65_1.html] under topic “Removed Libraries”. Since tr1 library is no longer present in boost 1.65, this causes thrift to fail and eventually ./configure fails Solution 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. -- This message was sent by Atlassian JIRA (v6.4.14#64029)