Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
For some reason, on Linux Parquet tests are now statically linked with libparquet and libarrow by default, even though other tests (Arrow, Plasma...) are dynamically-linked.
For example:
$ ldd build-test/debug/parquet-schema-test linux-vdso.so.1 (0x00007ffd376ad000) libgtest_main.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so (0x00007f3affeaf000) libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so (0x00007f3affde5000) libbz2.so.1.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x00007f3affdd1000) liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 (0x00007f3aff58d000) libsnappy.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x00007f3aff384000) libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 (0x00007f3affdb1000) libzstd.so.1.3.7 => /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 (0x00007f3affd0a000) libboost_filesystem.so.1.67.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 (0x00007f3aff168000) libstdc++.so.6 => /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x00007f3afeff4000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f3afec56000) libgcc_s.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x00007f3affcbb000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3afe865000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f3afe646000) libboost_system.so.1.67.0 => /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 (0x00007f3afe441000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f3afe239000) /lib64/ld-linux-x86-64.so.2 (0x00007f3affc8f000)
Contrast with e.g.:
$ ldd build-test/debug/arrow-uri-test linux-vdso.so.1 (0x00007ffe07fb6000) libarrow.so.15 => /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 (0x00007f774f340000) libboost_system.so.1.67.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 (0x00007f774f13b000) libgtest_main.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so (0x00007f7751723000) libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so (0x00007f7751659000) libstdc++.so.6 => /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x00007f774efc7000) libgcc_s.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x00007f7751645000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f774ebd6000) libaws-cpp-sdk-s3.so => /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-s3.so (0x00007f774e990000) libaws-cpp-sdk-core.so => /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-core.so (0x00007f774e893000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f774e68f000) liburiparser.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liburiparser.so.1 (0x00007f77515f2000) libbz2.so.1.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x00007f77515de000) liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 (0x00007f774e46b000) libsnappy.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x00007f774e262000) libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 (0x00007f77515bc000) libzstd.so.1.3.7 => /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 (0x00007f774e1bd000) libboost_filesystem.so.1.67.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 (0x00007f774dfa1000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f774dd82000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f774d9e4000) /lib64/ld-linux-x86-64.so.2 (0x00007f7751503000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f774d7dc000) libcurl.so.4 => /home/antoine/miniconda3/envs/pyarrow/lib/./libcurl.so.4 (0x00007f7751534000) libcrypto.so.1.1 => /home/antoine/miniconda3/envs/pyarrow/lib/./libcrypto.so.1.1 (0x00007f774d512000) libaws-c-event-stream.so.0unstable => /home/antoine/miniconda3/envs/pyarrow/lib/./libaws-c-event-stream.so.0unstable (0x00007f775152b000) libaws-c-common.so.0unstable => /home/antoine/miniconda3/envs/pyarrow/lib/./libaws-c-common.so.0unstable (0x00007f774d4ef000) libssh2.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/././libssh2.so.1 (0x00007f774d4bd000) libssl.so.1.1 => /home/antoine/miniconda3/envs/pyarrow/lib/././libssl.so.1.1 (0x00007f774d42d000) libgssapi_krb5.so.2 => /home/antoine/miniconda3/envs/pyarrow/lib/././libgssapi_krb5.so.2 (0x00007f774d3de000) libkrb5.so.3 => /home/antoine/miniconda3/envs/pyarrow/lib/././libkrb5.so.3 (0x00007f774d302000) libk5crypto.so.3 => /home/antoine/miniconda3/envs/pyarrow/lib/././libk5crypto.so.3 (0x00007f774d2e1000) libcom_err.so.3 => /home/antoine/miniconda3/envs/pyarrow/lib/././libcom_err.so.3 (0x00007f774d2db000) libaws-checksums.so => /home/antoine/miniconda3/envs/pyarrow/lib/././libaws-checksums.so (0x00007f774d2cd000) libkrb5support.so.0 => /home/antoine/miniconda3/envs/pyarrow/lib/./././libkrb5support.so.0 (0x00007f774d2be000) libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f774d0a3000)
Static linking makes building slower and the test executables larger.
Attachments
Issue Links
- links to