Я задавался вопросом, возможно ли видеть содержание одной из библиотек по моей системе.
Я перешел к usr/lib каталогу со своим терминалом. и я попробовал nano
и vi
но я не мог видеть их содержание.
Существует ли путь?
Библиотеки являются двоичными файлами, таким образом, Вы не сможете видеть, что содержание использует текстовый редактор или любую программу чтения файла обычного текста как cat
, less
и т.д.
, Ваш лучший выбор состоял бы в том, чтобы использовать strings
для чтения читаемого содержания из библиотеки.
Статический файл библиотеки, заканчивающийся .a
расширение, является просто архивом скомпилированных объектных файлов от исходного кода. Можно распаковать объектные файлы в каталог, от foo.a
файл, с помощью площадь инструмент в терминале.
Однако это все еще не позволяет Вам редактировать источник и вносить изменения. Если Вы хотите изменить рассматриваемую программу, то необходимо найти исходный код для восходящего проекта, который создал файл, и затем измените и перекомпилируйте тот источник.
кроме того, даже если бы Вы смогли изменить foo.a
файл с помощью Hex-редактора или подобный и изменить функциональность, это было бы фактически бесполезное изменение как что-либо, что связалось с тем файлом, должен будет быть восстановлен с новой версией, для адаптации изменений.