Open alexey-milovidov opened 10 months ago
This is a wrong practice and not going to work:
milovidov@milovidov-desktop:~/work/clickhouse-odbc/build$ ldd driver/libclickhouseodbc.so linux-vdso.so.1 (0x00007fffab910000) libodbcinst.so.2 => /lib/x86_64-linux-gnu/libodbcinst.so.2 (0x00007fd6f8cc3000) libicuuc.so.70 => /lib/x86_64-linux-gnu/libicuuc.so.70 (0x00007fd6f8ac8000) libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fd6f889c000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fd6f87b5000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fd6f8795000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd6f856b000) /lib64/ld-linux-x86-64.so.2 (0x00007fd6f9191000) libltdl.so.7 => /lib/x86_64-linux-gnu/libltdl.so.7 (0x00007fd6f8560000) libicudata.so.70 => /lib/x86_64-linux-gnu/libicudata.so.70 (0x00007fd6f6942000)
The right way to build a self-contained shared library is to use --whole-archive and to remove all irrelevant symbols with a linker script. I did it initially: https://github.com/ClickHouse/clickhouse-odbc/commit/ff642ef4e616291a59fb4b3cc8c9c2639cc0e615
--whole-archive
related https://github.com/ClickHouse/clickhouse-odbc/issues/245
This is a wrong practice and not going to work:
The right way to build a self-contained shared library is to use
--whole-archive
and to remove all irrelevant symbols with a linker script. I did it initially: https://github.com/ClickHouse/clickhouse-odbc/commit/ff642ef4e616291a59fb4b3cc8c9c2639cc0e615