Что такое LD для переменной LD_LIBRARY_PATH в * unix? - PullRequest
9 голосов
/ 29 ноября 2009

Я знаю, что LD_LIBRARY_PATH - это переменная окружения, в которой компоновщик будет искать общую библиотеку (которая содержит общие объекты) для связи с исполняемым кодом.

Но для чего выступает LD, так этоэто для нагрузки?или список каталогов?

Ответы [ 2 ]

11 голосов
/ 29 ноября 2009

Linker. Линкер * nix называется ld. Когда программа с динамическими библиотеками связана, компоновщик добавляет дополнительный код для поиска динамических библиотек для разрешения символов, не связанных статически. Обычно этот код выглядит в / lib и / usr / lib. LD_LIBRARY_PATH - список других каталогов для поиска, разделенных двоеточиями.

«ldd» - это удобная программа для просмотра библиотек: попробуйте, например, «ldd / bin / ls».

Это также может означать «Загрузчик». ; -)

Редакция:

В качестве (полу) интересного примечания: я думаю, что динамические библиотеки когда-нибудь исчезнут. Они были необходимы, когда места на диске и системной памяти было мало. Их использование снижает производительность (т. Е. Символы должны быть разрешены, а объектный код отредактирован). В наши дни, когда объем памяти составляет 3 ГБ и время загрузки составляет 7 секунд, может быть целесообразно вернуться к статическому связыванию.

За исключением того факта, что каждая программа на C ++ волшебным образом вырастет до 3 МБ. ; -)

3 голосов
/ 13 декабря 2009

LD_LIBRARY_PATH - обозначает ЗАГРУЗКУ ПУТИ БИБЛИОТЕКИ или иногда называется ПУТЬ ПОГРУЗЧИКА ЛИБРАРИИ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...