Динамические библиотеки (.so) не могут иметь «статических зависимостей», поскольку они уже связаны.
Объектные файлы (.o) и статические библиотеки (.a) определяют символы, которые они экспортируют (для использованиядругие) и символы, которые они сами используют.
Вы можете перечислить символы объектных файлов с помощью команды nm
. Например:
$ nm lukas.o
U __cxa_atexit
U __dso_handle
0000000000000000 V DW.ref.__gxx_personality_v0
U _GLOBAL_OFFSET_TABLE_
00000000000003a8 t _GLOBAL__sub_I__Z15double_from_strRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
U __gxx_personality_v0
00000000000001d5 T main
U __stack_chk_fail
U _Unwind_Resume
Ключевое слово U
отмечает символы, которые не определены, то есть статические зависимости объектного файла.