You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Wes McKinney (JIRA)" <ji...@apache.org> on 2019/01/26 16:36:00 UTC

[jira] [Closed] (ARROW-4380) [C++] Linker failure due to Boost library link order

     [ https://issues.apache.org/jira/browse/ARROW-4380?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Wes McKinney closed ARROW-4380.
-------------------------------
       Resolution: Cannot Reproduce
    Fix Version/s:     (was: 0.13.0)

Seems I was chasing my own tail due to a CXX ABI issue (when passing {{-DARROW_TENSORFLOW=ON}}). Removing that fixed the problem

> [C++] Linker failure due to Boost library link order
> ----------------------------------------------------
>
>                 Key: ARROW-4380
>                 URL: https://issues.apache.org/jira/browse/ARROW-4380
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: C++
>            Reporter: Wes McKinney
>            Assignee: Wes McKinney
>            Priority: Major
>
> I hit this developing on Ubuntu 18.10 / clang 6 (gcc 8.2.x toolchain base) for some reason:
> {code}
> In [1]: import pyarrow.parquet as pq                                                           
> ---------------------------------------------------------------------------
> ImportError                               Traceback (most recent call last)
> <ipython-input-1-dc8a4f7832af> in <module>
> ----> 1 import pyarrow.parquet as pq
> ~/code/arrow/python/pyarrow/__init__.py in <module>
>      52 
>      53 
> ---> 54 from pyarrow.lib import cpu_count, set_cpu_count
>      55 from pyarrow.lib import (null, bool_,
>      56                          int8, int16, int32, int64,
> ImportError: /home/wesm/local-release/lib/libarrow.so.12: undefined symbol: _ZN5boost6system6detail20generic_category_ncxEv
> In [2]:                                                                                        
> Do you really want to exit ([y]/n)? y
> (arrow-3.7) 10:12 ~/code/arrow/python  ((apache-arrow-0.12.0))$ ldd ~/local-release/lib/libarrow.so
> 	linux-vdso.so.1 (0x00007ffcbd4e5000)
> 	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fc74e8c7000)
> 	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fc74e8a6000)
> 	libz.so.1 => /home/wesm/cpp-runtime-toolchain/lib/libz.so.1 (0x00007fc74e88c000)
> 	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fc74e882000)
> 	libstdc++.so.6 => /home/wesm/cpp-runtime-toolchain/lib/libstdc++.so.6 (0x00007fc74e740000)
> 	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fc74e5b3000)
> 	libgcc_s.so.1 => /home/wesm/cpp-runtime-toolchain/lib/libgcc_s.so.1 (0x00007fc74e59d000)
> 	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc74e3b3000)
> 	/lib64/ld-linux-x86-64.so.2 (0x00007fc74ef42000)
> (arrow-3.7) 10:12 ~/code/arrow/python  ((apache-arrow-0.12.0))$ c++filt _ZN5boost6system6detail20generic_category_ncxEv
> boost::system::detail::generic_category_ncx()
> {code}
> This occurs on 0.12.0 whether we statically link Boost or not.
> Passing boost_system last in the linker call fixes the issue for me...



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)