[jira] [Commented] (ARROW-6309) [C++] Parquet tests and executables are linked statically
[ https://issues.apache.org/jira/browse/ARROW-6309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16912724#comment-16912724 ] Sutou Kouhei commented on ARROW-6309: - We need to use static linking only on Windows, right? I've created a pull request for the change: https://github.com/apache/arrow/pull/5158 > [C++] Parquet tests and executables are linked statically > - > > Key: ARROW-6309 > URL: https://issues.apache.org/jira/browse/ARROW-6309 > Project: Apache Arrow > Issue Type: Bug > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > Labels: pull-request-available > Fix For: 0.15.0 > > Time Spent: 10m > Remaining Estimate: 0h > > 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: > {code} > $ ldd build-test/debug/parquet-schema-test > linux-vdso.so.1 (0x7ffd376ad000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f3affeaf000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f3affde5000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f3affdd1000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f3aff58d000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f3aff384000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f3affdb1000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f3affd0a000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f3aff168000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f3afeff4000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f3afec56000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f3affcbb000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f3afe865000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f3afe646000) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 > (0x7f3afe441000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f3afe239000) > /lib64/ld-linux-x86-64.so.2 (0x7f3affc8f000) > {code} > Contrast with e.g.: > {code} > $ ldd build-test/debug/arrow-uri-test > linux-vdso.so.1 (0x7ffe07fb6000) > libarrow.so.15 => > /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 > (0x7f774f34) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 > (0x7f774f13b000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f7751723000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f7751659000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f774efc7000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f7751645000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f774ebd6000) > libaws-cpp-sdk-s3.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-s3.so > (0x7f774e99) > libaws-cpp-sdk-core.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-core.so > (0x7f774e893000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7f774e68f000) > liburiparser.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/liburiparser.so.1 > (0x7f77515f2000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f77515de000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f774e46b000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f774e262000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f77515bc000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f774e1bd000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f774dfa1000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f774dd82000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f774d9e4000) > /lib64/ld-linux-x86-64.so.2 (0x7f7751503000) >
[jira] [Commented] (ARROW-6309) [C++] Parquet tests and executables are linked statically
[ https://issues.apache.org/jira/browse/ARROW-6309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16912353#comment-16912353 ] Wes McKinney commented on ARROW-6309: - Yes, this is definitely a regression, we should fix > [C++] Parquet tests and executables are linked statically > - > > Key: ARROW-6309 > URL: https://issues.apache.org/jira/browse/ARROW-6309 > Project: Apache Arrow > Issue Type: Bug > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > 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: > {code} > $ ldd build-test/debug/parquet-schema-test > linux-vdso.so.1 (0x7ffd376ad000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f3affeaf000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f3affde5000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f3affdd1000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f3aff58d000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f3aff384000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f3affdb1000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f3affd0a000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f3aff168000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f3afeff4000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f3afec56000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f3affcbb000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f3afe865000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f3afe646000) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 > (0x7f3afe441000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f3afe239000) > /lib64/ld-linux-x86-64.so.2 (0x7f3affc8f000) > {code} > Contrast with e.g.: > {code} > $ ldd build-test/debug/arrow-uri-test > linux-vdso.so.1 (0x7ffe07fb6000) > libarrow.so.15 => > /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 > (0x7f774f34) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 > (0x7f774f13b000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f7751723000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f7751659000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f774efc7000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f7751645000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f774ebd6000) > libaws-cpp-sdk-s3.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-s3.so > (0x7f774e99) > libaws-cpp-sdk-core.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-core.so > (0x7f774e893000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7f774e68f000) > liburiparser.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/liburiparser.so.1 > (0x7f77515f2000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f77515de000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f774e46b000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f774e262000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f77515bc000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f774e1bd000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f774dfa1000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f774dd82000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f774d9e4000) > /lib64/ld-linux-x86-64.so.2 (0x7f7751503000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f774d7dc000) > libcurl.so.4 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libcurl.so.4 (0x7f7751534000) > libcrypto.so.1.1 => >
[jira] [Commented] (ARROW-6309) [C++] Parquet tests and executables are linked statically
[ https://issues.apache.org/jira/browse/ARROW-6309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16912336#comment-16912336 ] Antoine Pitrou commented on ARROW-6309: --- It also means that someone cannot disable production of static libraries on Linux... [~kou] > [C++] Parquet tests and executables are linked statically > - > > Key: ARROW-6309 > URL: https://issues.apache.org/jira/browse/ARROW-6309 > Project: Apache Arrow > Issue Type: Bug > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > 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: > {code} > $ ldd build-test/debug/parquet-schema-test > linux-vdso.so.1 (0x7ffd376ad000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f3affeaf000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f3affde5000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f3affdd1000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f3aff58d000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f3aff384000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f3affdb1000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f3affd0a000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f3aff168000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f3afeff4000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f3afec56000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f3affcbb000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f3afe865000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f3afe646000) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 > (0x7f3afe441000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f3afe239000) > /lib64/ld-linux-x86-64.so.2 (0x7f3affc8f000) > {code} > Contrast with e.g.: > {code} > $ ldd build-test/debug/arrow-uri-test > linux-vdso.so.1 (0x7ffe07fb6000) > libarrow.so.15 => > /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 > (0x7f774f34) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 > (0x7f774f13b000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f7751723000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f7751659000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f774efc7000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f7751645000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f774ebd6000) > libaws-cpp-sdk-s3.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-s3.so > (0x7f774e99) > libaws-cpp-sdk-core.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-core.so > (0x7f774e893000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7f774e68f000) > liburiparser.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/liburiparser.so.1 > (0x7f77515f2000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f77515de000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f774e46b000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f774e262000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f77515bc000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f774e1bd000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f774dfa1000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f774dd82000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f774d9e4000) > /lib64/ld-linux-x86-64.so.2 (0x7f7751503000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f774d7dc000) > libcurl.so.4 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libcurl.so.4 (0x7f7751534000)
[jira] [Commented] (ARROW-6309) [C++] Parquet tests and executables are linked statically
[ https://issues.apache.org/jira/browse/ARROW-6309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16912334#comment-16912334 ] Antoine Pitrou commented on ARROW-6309: --- This used to be only on Windows. Now it seems it's on Linux too. > [C++] Parquet tests and executables are linked statically > - > > Key: ARROW-6309 > URL: https://issues.apache.org/jira/browse/ARROW-6309 > Project: Apache Arrow > Issue Type: Bug > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > 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: > {code} > $ ldd build-test/debug/parquet-schema-test > linux-vdso.so.1 (0x7ffd376ad000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f3affeaf000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f3affde5000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f3affdd1000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f3aff58d000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f3aff384000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f3affdb1000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f3affd0a000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f3aff168000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f3afeff4000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f3afec56000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f3affcbb000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f3afe865000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f3afe646000) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 > (0x7f3afe441000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f3afe239000) > /lib64/ld-linux-x86-64.so.2 (0x7f3affc8f000) > {code} > Contrast with e.g.: > {code} > $ ldd build-test/debug/arrow-uri-test > linux-vdso.so.1 (0x7ffe07fb6000) > libarrow.so.15 => > /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 > (0x7f774f34) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 > (0x7f774f13b000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f7751723000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f7751659000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f774efc7000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f7751645000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f774ebd6000) > libaws-cpp-sdk-s3.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-s3.so > (0x7f774e99) > libaws-cpp-sdk-core.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-core.so > (0x7f774e893000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7f774e68f000) > liburiparser.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/liburiparser.so.1 > (0x7f77515f2000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f77515de000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f774e46b000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f774e262000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f77515bc000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f774e1bd000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f774dfa1000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f774dd82000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f774d9e4000) > /lib64/ld-linux-x86-64.so.2 (0x7f7751503000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f774d7dc000) > libcurl.so.4 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libcurl.so.4 (0x7f7751534000) > libcrypto.so.1.1 =>
[jira] [Commented] (ARROW-6309) [C++] Parquet tests and executables are linked statically
[ https://issues.apache.org/jira/browse/ARROW-6309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16912332#comment-16912332 ] Wes McKinney commented on ARROW-6309: - I think if we isolate the Thrift symbols into a {{libparquet_thrift.a}} static library then we can fix this. Do you want to try? I can, too > [C++] Parquet tests and executables are linked statically > - > > Key: ARROW-6309 > URL: https://issues.apache.org/jira/browse/ARROW-6309 > Project: Apache Arrow > Issue Type: Bug > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > 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: > {code} > $ ldd build-test/debug/parquet-schema-test > linux-vdso.so.1 (0x7ffd376ad000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f3affeaf000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f3affde5000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f3affdd1000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f3aff58d000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f3aff384000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f3affdb1000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f3affd0a000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f3aff168000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f3afeff4000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f3afec56000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f3affcbb000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f3afe865000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f3afe646000) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 > (0x7f3afe441000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f3afe239000) > /lib64/ld-linux-x86-64.so.2 (0x7f3affc8f000) > {code} > Contrast with e.g.: > {code} > $ ldd build-test/debug/arrow-uri-test > linux-vdso.so.1 (0x7ffe07fb6000) > libarrow.so.15 => > /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 > (0x7f774f34) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 > (0x7f774f13b000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f7751723000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f7751659000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f774efc7000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f7751645000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f774ebd6000) > libaws-cpp-sdk-s3.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-s3.so > (0x7f774e99) > libaws-cpp-sdk-core.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-core.so > (0x7f774e893000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7f774e68f000) > liburiparser.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/liburiparser.so.1 > (0x7f77515f2000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f77515de000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f774e46b000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f774e262000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f77515bc000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f774e1bd000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f774dfa1000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f774dd82000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f774d9e4000) > /lib64/ld-linux-x86-64.so.2 (0x7f7751503000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f774d7dc000) > libcurl.so.4 => >
[jira] [Commented] (ARROW-6309) [C++] Parquet tests and executables are linked statically
[ https://issues.apache.org/jira/browse/ARROW-6309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16912329#comment-16912329 ] Wes McKinney commented on ARROW-6309: - Well https://github.com/apache/arrow/blob/master/cpp/src/parquet/CMakeLists.txt#L327 I think that the utilities have been statically linked also for a long time. > [C++] Parquet tests and executables are linked statically > - > > Key: ARROW-6309 > URL: https://issues.apache.org/jira/browse/ARROW-6309 > Project: Apache Arrow > Issue Type: Bug > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > 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: > {code} > $ ldd build-test/debug/parquet-schema-test > linux-vdso.so.1 (0x7ffd376ad000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f3affeaf000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f3affde5000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f3affdd1000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f3aff58d000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f3aff384000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f3affdb1000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f3affd0a000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f3aff168000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f3afeff4000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f3afec56000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f3affcbb000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f3afe865000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f3afe646000) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 > (0x7f3afe441000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f3afe239000) > /lib64/ld-linux-x86-64.so.2 (0x7f3affc8f000) > {code} > Contrast with e.g.: > {code} > $ ldd build-test/debug/arrow-uri-test > linux-vdso.so.1 (0x7ffe07fb6000) > libarrow.so.15 => > /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 > (0x7f774f34) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 > (0x7f774f13b000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f7751723000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f7751659000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f774efc7000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f7751645000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f774ebd6000) > libaws-cpp-sdk-s3.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-s3.so > (0x7f774e99) > libaws-cpp-sdk-core.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libaws-cpp-sdk-core.so > (0x7f774e893000) > libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7f774e68f000) > liburiparser.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/liburiparser.so.1 > (0x7f77515f2000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f77515de000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f774e46b000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f774e262000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f77515bc000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f774e1bd000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f774dfa1000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f774dd82000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f774d9e4000) > /lib64/ld-linux-x86-64.so.2 (0x7f7751503000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f774d7dc000) > libcurl.so.4 => >
[jira] [Commented] (ARROW-6309) [C++] Parquet tests and executables are linked statically
[ https://issues.apache.org/jira/browse/ARROW-6309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16912309#comment-16912309 ] Antoine Pitrou commented on ARROW-6309: --- Same problem with Parquet utilities, e.g.: {code} $ ldd build-test/debug/parquet-dump-schema linux-vdso.so.1 (0x7fff97beb000) libbz2.so.1.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7ff046339000) liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 (0x7ff044eec000) libsnappy.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7ff044ce3000) libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 (0x7ff046319000) libzstd.so.1.3.7 => /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 (0x7ff046274000) libboost_filesystem.so.1.67.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 (0x7ff044ac7000) libboost_system.so.1.67.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 (0x7ff0448c2000) libthrift.so.0.11.0 => /home/antoine/miniconda3/envs/pyarrow/lib/libthrift.so.0.11.0 (0x7ff0461be000) libstdc++.so.6 => /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7ff04474e000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7ff0443b) libgcc_s.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7ff04616f000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x7ff044191000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7ff043da) /lib64/ld-linux-x86-64.so.2 (0x7ff046128000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7ff043b98000) libssl.so.1.1 => /home/antoine/miniconda3/envs/pyarrow/lib/./libssl.so.1.1 (0x7ff043b08000) libcrypto.so.1.1 => /home/antoine/miniconda3/envs/pyarrow/lib/./libcrypto.so.1.1 (0x7ff04383e000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7ff04363a000) {code} > [C++] Parquet tests and executables are linked statically > - > > Key: ARROW-6309 > URL: https://issues.apache.org/jira/browse/ARROW-6309 > Project: Apache Arrow > Issue Type: Bug > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > 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: > {code} > $ ldd build-test/debug/parquet-schema-test > linux-vdso.so.1 (0x7ffd376ad000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f3affeaf000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so > (0x7f3affde5000) > libbz2.so.1.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libbz2.so.1.0 (0x7f3affdd1000) > liblz4.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.so.1 > (0x7f3aff58d000) > libsnappy.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.so.1 (0x7f3aff384000) > libz.so.1 => /home/antoine/miniconda3/envs/pyarrow/lib/libz.so.1 > (0x7f3affdb1000) > libzstd.so.1.3.7 => > /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.so.1.3.7 > (0x7f3affd0a000) > libboost_filesystem.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so.1.67.0 > (0x7f3aff168000) > libstdc++.so.6 => > /home/antoine/miniconda3/envs/pyarrow/lib/libstdc++.so.6 (0x7f3afeff4000) > libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7f3afec56000) > libgcc_s.so.1 => > /home/antoine/miniconda3/envs/pyarrow/lib/libgcc_s.so.1 (0x7f3affcbb000) > libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7f3afe865000) > libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 > (0x7f3afe646000) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/./libboost_system.so.1.67.0 > (0x7f3afe441000) > librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7f3afe239000) > /lib64/ld-linux-x86-64.so.2 (0x7f3affc8f000) > {code} > Contrast with e.g.: > {code} > $ ldd build-test/debug/arrow-uri-test > linux-vdso.so.1 (0x7ffe07fb6000) > libarrow.so.15 => > /home/antoine/arrow/dev/cpp/build-test/debug/libarrow.so.15 > (0x7f774f34) > libboost_system.so.1.67.0 => > /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so.1.67.0 > (0x7f774f13b000) > libgtest_main.so => > /home/antoine/miniconda3/envs/pyarrow/lib/libgtest_main.so > (0x7f7751723000) > libgtest.so => /home/antoine/miniconda3/envs/pyarrow/lib/libgtest.so >