hi Praveen,

On Wed, Mar 20, 2019 at 7:26 AM Praveen Kumar <[email protected]> wrote:
>
> Hi Folks,
>
> Post the CMake Refactor, we are running into issues in the Gandiva crossbow
> jobs.
>
> We are using conda to setup the dependencies currently. The following are
> the issues that we ran into
>
> 1. I am not sure if the conda forge packages are compatible in trusty (I
> was getting issues linking to boost. Sample build :
> https://travis-ci.org/praveenbingo/arrow-build/builds/508347443)

My recommendation would be to not use conda-forge at all for this
build anymore. You may need to resolve
https://issues.apache.org/jira/browse/ARROW-4868

>
> 2. I am was able to work around that using a specific label
> "conda-forge/label/cf201901" which did not throw the same errors.
>
> 3. But then GTest was not linking correctly, so built GTest from source.
>
> 4. Even after that there are some linking issues :
> "/home/praveenkumar/CPP_TOOLCHAIN/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld:
> ../../release/libarrow.so.13.0.0: undefined reference to
> `icu_58::Locale::Locale(icu_58::Locale const&)'
> /home/praveenkumar/CPP_TOOLCHAIN/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld:
> ././../x86_64release-/conda_cos6libarrow.so.13.0.0-: undefined reference to
> `u_isblank_58'
> /home/praveenkumar/CPP_TOOLCHAIN/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld:
> ../../release/libarrow.so.13.0.0: undefined reference to `u_digit_58'"
>

If you do use the cf201901 label, you have to use the system compilers
instead of the conda-forge compilers (which are gcc 7.3.0, and will
produce binaries that aren't backward compatible)

Have you all considered producing devtoolset-2 binaries? I've brought
this up in the past. This is the "nuke-it-from-orbit" approach that
will address compatibility on many Linuxes. Uwe has done all the hard
work to get things building on CentOS 5 with devtoolset-2 and you can
ship these binaries on Ubuntu Trusty as well.

> Any pointers on how to setup the environment in trusty?
>
> Krisitan - does any of the crossbow jobs build Gandiva on CentOs6 (or)
> Trusty? We could then re-use the same for the Gandiva packaging work we do.
>

Per my comment above, consider a single devtoolset-2 build using the
configuration used in
https://github.com/apache/arrow/blob/master/python/manylinux1/Dockerfile-x86_64_base.
We're already done all the work you need, including setting up the
compiler toolchain and building all the dependencies in the
Dockerfile.

> Thanks a ton.
>
> Thx.

Reply via email to