Hi Wes,

Thanks for the suggestion. I purged the system boost libs and removed LLVM
(suspecting it might be bringing in some static dependencies) too. Then
recompiled Arrow and tried to link Gandiva again but no avail.

It looks similar to the one seen here,
https://issues.apache.org/jira/browse/ARROW-2318.

Will circle back if i find the root cause.

Thx.

On Tue, Jun 26, 2018 at 2:27 AM, Wes McKinney <wesmck...@gmail.com> wrote:

> hi Praveen,
>
> Are /usr/include or /usr/local/include getting added to your build
> paths (this could happen if you have LLVM or some other library in
> your system paths)?
>
> Unfortunately, when you're using conda libraries or an external
> toolchain at all, you have to be really strict about toolchain
> isolation. So here I think what's happening is that even you are
> setting $BOOST_ROOT to your external toolchain location, but the C++
> compiler is picking up the other Boost from your system path. You can
> test this hypothesis by purging all your system Boost libraries using
> apt-get purge
>
> - Wes
>
> On Mon, Jun 25, 2018 at 1:13 PM, Praveen Kumar <prav...@dremio.com> wrote:
> > Tried that did not help.
> >
> > I also tried to link in the boost libraries myself since it was not clear
> > if arrow was including the transitive dependencies from the build script.
> > That does not help as well.
> >
> > On Mon, Jun 25, 2018 at 7:55 PM, Dimitri Vorona <
> > alen...@googlemail.com.invalid> wrote:
> >
> >> Hi,
> >>
> >> I'd this a similar issue some time ago, and the solution was building
> after
> >> a clean checkout, which I interpreted as some kind of caching issue.
> >>
> >> Generally, I've found that starting with a clean checkout and following
> the
> >> steps from [0] never failed for me.
> >>
> >> Hope that helps!
> >>
> >> Cheers,
> >> Dimitri.
> >>
> >> [0]: https://arrow.apache.org/docs/python/development.html
> >>
> >> On Mon, Jun 25, 2018 at 4:17 PM Praveen Kumar <prav...@dremio.com>
> wrote:
> >>
> >> > Hi Folks,
> >> >
> >> > I am a newbie to cpp build/packaging. I need some help on building
> >> against
> >> > the arrow static library.
> >> >
> >> > I tried the following
> >> >
> >> > 1. Using both arrow and boost from conda (latest versions 0.9 and
> 1.67).
> >> > 2. Building arrow from source and boost from conda.
> >> > 3. Built both from source.
> >> >
> >> > But i am getting this error - with all combinations
> >> >
> >> > 1. boost/regex/v4/regex_match.hpp:50: undefined reference to
> >> > `boost::re_detail_106700::perl_matcher<__gnu_cxx::__
> normal_iterator<char
> >> > const*, std::string>,
> >> > std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char
> >> const*,
> >> > std::string> > >, boost::regex_traits<char,
> >> boost::cpp_regex_traits<char> >
> >> > >::match()'
> >> >
> >> > 2. boost/regex/v4/basic_regex.hpp:381: undefined reference to
> >> > `boost::basic_regex<char, boost::regex_traits<char,
> >> > boost::cpp_regex_traits<char> > >::do_assign(char const*, char const*,
> >> > unsigned int)'
> >> >
> >> > 3. boost/regex/v4/perl_matcher.hpp:386: undefined reference to
> >> > `boost::re_detail_106700::perl_matcher<__gnu_cxx::__
> normal_iterator<char
> >> > const*, std::string>,
> >> > std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char
> >> const*,
> >> > std::string> > >, boost::regex_traits<char,
> >> boost::cpp_regex_traits<char> >
> >> > >::construct_init(boost::basic_regex<char, boost::regex_traits<char,
> >> > boost::cpp_regex_traits<char> > > const&,
> >> > boost::regex_constants::_match_flags)'
> >> >
> >> > I am including the boost headers from same path that arrow was built
> >> with.
> >> > Surprisingly it works in travis(ubuntu trusty) and in mac but fails
> on a
> >> > stand alone Ubuntu machine.
> >> >
> >> > Googling around some of the root causes seem to be building and
> linking
> >> > with different versions of boost/compiler differences. Both do not
> apply
> >> > here.
> >> >
> >> > Has anyone faced this before?
> >> >
> >> > Thx.
> >> >
> >>
>

Reply via email to