У меня есть некоторый наддув в зависимости от кода, я хочу, чтобы скомпилировать в виде динамической библиотеки:Удалить библиотеку зависимости
g++ -Wall -fPIC -o myclass.o -c myclass.cpp
g++ -shared -Wl,-soname,myclass.so.1 -o lib/myclass.so.1 myclass.o -lc
Однако после компиляции я замечаю еще повышающая зависимость (я проверяю с ldd
)
ldd lib/myclass.so.1
linux-vdso.so.1 (0x00007fff741fd000)
libboost_system.so.1.60.0 => /usr/lib/libboost_system.so.1.60.0 (0x00007f7945649000)
libboost_serialization.so.1.60.0 => /usr/lib/libboost_serialization.so.1.60.0 (0x00007f794540b000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f7945089000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007f7944d83000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007f79449e2000)
/usr/lib64/ld-linux-x86-64.so.2 (0x00005590726ae000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f79447cc000)
librt.so.1 => /usr/lib/librt.so.1 (0x00007f79445c3000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f79443a6000)
Есть ли способ удалить динамическую зависимость boost от моей общей библиотеки (упаковать текущую версию ускорения объектов, которые я вызываю в .so)?
Вы пытались 'ldd -v' проверить, не связаны ли библиотеки с ссылками на Boost? – jotik