При использовании HP-UX я могу использовать утилиту chatr для отправки отчетов по различным внутренним атрибутам разделяемой библиотеки. Это также позволит мне изменить внутренние атрибуты разделяемых библиотек, которые я создал.Как проверить внутренние атрибуты общих объектов?
Chatr утилита может сообщить, а в некоторых случаях изменения, такие вещи, как:
- вводного времени связывания поведения,
- встраиваемой список путей библиотеки, созданной во время сборки,
- ли библиотека подлежит время выполнения поиска в пути,
- внутренние имена,
- и т.д., и т.д.
Является ли такая утилита доступной для Solaris?
Редактировать: Freaky! Благодаря ответу mark4o ниже я снова просмотрел вывод elfdump для типичной системы .so (libm.so.2 на Sol 10). Тем не менее, и вот причудливая часть, я неправильно набранная команду ввести:
elfdump libm.so.2 | moe
В удивительном росчерке прозорливости, это дало мне обратно сообщение об использовании для утилиты под названием MOE которого человек Описание раздела страницы говорит:
Утилита moe демонстрирует оптимальное расширение имени пути, содержащего токены компоновщика зарезервированного времени выполнения. Эти маркеры могут использоваться для определения зависимостей, filtees и runpaths в динамических объектах. Расширение этих токенов во время выполнения обеспечивает гибкий механизм выбора объектов и путей поиска, которые лучше всего работают на этом компьютере.
Это поможет мне решить, почему libm.so.2 shlib несовместим с обоими двумя разными машинами, из-за чего мой неполный исполняемый файл не может быть запущен на одном сервере.
mark4o, приветствия, но elfdump не дает мне точно, что мне нужно. Однако пересмотр вывода elfdump для данной системы .so дал мне полезность, которая выглядит действительно полезной. Я отредактирую свой оригинальный вопрос. –
@ mark4o, спасибо за указатель на pvs! +1 (-: –
И, конечно, брат 'lari' и' moe' - это [crle] (http://docs.oracle.com/cd/E23824_01/html/821-1461/crle-1. html # scrolltoc) для работы с путями запуска системы по умолчанию. – alanc