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)

Reply via email to