rpath (rpath)
Эта страница требует существенной переработки. |
rpath — путь поиска библиотек и исполняемых файлов во время выполнения программы. rpath жёстко запрограммирован в исполняемом файле или библиотеке. Загрузчики библиотек (динамического связывания) используют rpath для поиска необходимых библиотек.
В частности, он кодирует путь к разделяемым библиотекам в заголовке исполняемого файла (или другой разделяемой библиотеки). Это значение заголовка RPATH (названное так в стандартах заголовков Executable and Linkable Format) может либо переопределять, либо дополнять системные пути поиска динамических ссылок по умолчанию.
rpath исполняемой или разделяемой библиотеки — это необязательная запись в разделе .dynamic
исполняемой или разделяемой библиотеки ELF с типом DT_RPATH
, называемый атрибутом DT_RPATH
. Он может быть сохранен там во время компоновки компоновщиком. Такие инструменты, как chrpath
и patchelf
, могут создать или изменить запись позже.
Использование записи DT_RPATH динамическим компоновщиком
[править | править код]Различные динамические компоновщики для ELF реализуют использование атрибута DT_RPATH
по-разному.
Примечания
[править | править код]Ссылки
[править | править код]- chrpath — инструмент для изменения атрибута
DT_RPATH
исполняемого файла и преобразования его в атрибутDT_RUNPATH
- FreeBSD devel/chrpath Порт для FreeBSD — инструмент для изменения
DT_RPATH
в существующих ELF-бинарных файлах - patchELF — небольшая утилита для изменения динамического связывателя и атрибута DT_RUNPATH исполняемых файлов ELF-файлов
На эту статью не ссылаются другие статьи Википедии. |