Как я могу переупорядочить LD_LIBRARY_PATH?

Как я могу переупорядочить LD_LIBRARY_PATH?

Править:

Я интересуюсь LD_LIBRARY_PATH, потому что у меня есть эта проблема:

Я не могу обновить, обновить и удалить свое приложение из kubuntu

и одна из ошибки происходит из-за libreadline.so, но как я объяснил здесь: https://dba.stackexchange.com/questions/31143/libreadline-so-6 это важно для postgresql.

В комментарии Phil сказал мне:

Можно, вероятно, зафиксировать это путем переупорядочения LD_LIBRARY_PATH так, чтобы/usr/local/lib/был> в конце, а не начало.

2
задан 13 April 2017 в 15:43

1 ответ

Чтобы расширить идею в комментарии Игнасио Васкеса-Абрамса: было бы полезно узнать , как устанавливается текущее значение этой переменной среды (в том порядке, который вам не нравится), в чтобы изменить это.

Если вы понятия не имеете, как он установлен, запустите:

grep LD_LIBRARY_PATH= ~/.* /etc/*

. Он просмотрит все точечные файлы в вашем домашнем каталоге и все файлы верхнего уровня в [ 111]. Вы получите сообщения об отказе в разрешении из запроса, но это нормально, они не будут подходить для мест, которые могут содержать скрипт, который запускается и устанавливает LD_LIBRARY_PATH. (Таким образом, вам не нужно запускать эту команду запроса как root.)

Если вы только получите сообщения об отказе в разрешении , то ничего не было найдено. Если у вас также есть строки с именем файла, двоеточием и содержимым файла, то было обнаружено, что может быть там, где он устанавливается. Этого также не может быть.

Вы можете расширить свой запрос, удалив символ =; просто знайте, что у вас больше шансов получить ложные срабатывания, когда переменная используется, но не устанавливается.

Если это не удастся ...

Если вы все еще не можете найти его, вы можете попробовать установить переменную самостоятельно. См.

Если он устанавливается после того, как его установили те механизмы, которые в настоящее время это делают, вы можете заменить его значение на то, что вы хотите (и это может быть измененная версия что это в настоящее время).

Если вы попробуете это, и оно либо ничего не сделает, либо вы обнаружите, что оно содержит текст , который вы дали, с другим текстом до или после него (или с некоторыми до и после), по крайней мере, это будет дать вам информацию о , когда он устанавливается, по сравнению с тем, когда он устанавливается любым способом, который вы выберете.

Если текст в неправильном порядке прикреплен только к концу переменной, как вы ее установили, это раздражает, но это эквивалентно, если все те же каталоги являются частью вашего ранее упорядоченного пути. (Все, что имеет значение, это то, где каталог первым появляется в пути, потому что после того, как он не будет сопоставлен там, он также не будет нигде сопоставлен.)

Если вы можете предоставить больше информации о , почему вам нужно сделать это, что может упростить поиск более эффективных способов определения того, что в данный момент его настраивает, и это может позволить сделать предложение о том, как его лучше настроить сами.

Этот ответ применим и к другим переменным среды.

Но для некоторых переменных, таких как PATH, есть несколько мест, которые почти всегда задают его, поэтому подобную проблему, с которой может быть легче решить.

0
ответ дан 13 April 2017 в 15:43

Другие вопросы по тегам:

Похожие вопросы: