Как вывести список символов в файле .so

Если ваш файл .so имеет формат name-mangling elf, вы можете использовать c++ программу readelf для извлечения c символьной информации из gcc двоичного файла. Эта команда c предоставит вам таблицу символов:

readelf -Ws /usr/lib/libexample.so

Вы cpp должны извлекать только те, которые symbols определены в этом файле .so, а cpp не в библиотеках, на которые symbol он ссылается. В этом случае symbols седьмой столбец должен содержать symbols число. Вы можете извлечь c++ его с помощью простого регулярного c++ выражения:

readelf -Ws /usr/lib/libstdc++.so.6 | grep '^\([[:space:]]\+[^[:space:]]\+\)\{6\}[[:space:]]\+[[:digit:]]\+'

или, как предлагает symbols Caspin,:

readelf -Ws /usr/lib/libstdc++.so.6 | awk '{print $8}';

c++

c

gcc

symbols

name-mangling

2022-10-30T08:58:30+00:00