Иногда, когда я делаю nm в файле .so(например, libstdС++. so.6), он не говорит о символах, и мне нужно использовать nm --dynamic. Но для некоторых других .so файлов я могу видеть символы без --dynamic.
Док говорит:
Отображение динамических символов, а не обычных символов. Это имеет смысл только для динамических объектов, таких как определенные типы разделяемых библиотек.
Но это сбивает с толку... что "типам" разделяемых библиотек нужно --dynamic? Как это определяется? Во время компиляции библиотеки? Я думал, что все разделяемые библиотеки являются динамическими (я имею в виду, их можно динамически загружать во время выполнения), но кажется, что мое понимание не совсем правильно.