Что в CentOS строка LD_LIBRARY_PATH = / usr / local / lib: / usr / local / lib64 делать?

Хостинг: новая капля на Digital Ocean

Операционная система: новая установка CentOS 7.6.1810

Вопрос: Я установил OpenSSL 1.1.1 из исходного кода, используя учебное пособие, но я не понимаю, что делают следующие две строки. Я понимаю основы Linux, но не знаю, как их читать.

:~# export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib64
:~# echo "export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib64" >> ~/.bashrc

Во-вторых, когда я проверяю версию, возвращается 1.1.1.

:~# openssl version
:~# OpenSSL 1.1.1  11 Sep 2018

Однако, когда я смотрю на то, что установлено, оно все еще показывает старый OpenSSL 1.0.2k.

:~# yum list installed | grep openssl
openssl.x86_64                          1:1.0.2k-16.el7_6.1        installed
openssl-devel.x86_64                    1:1.0.2k-16.el7_6.1        @updates
openssl-libs.x86_64                     1:1.0.2k-16.el7_6.1        installed

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

0
задан 30 June 2019 в 21:28
1 ответ

На странице руководства ld.so (8) объясняется:

       LD_LIBRARY_PATH
              A  list  of  directories in which to search for ELF libraries at
              execution time.  The items in the list are separated  by  either
              colons  or  semicolons,  and  there  is  no support for escaping
              either separator.

              This variable is ignored in secure-execution mode.

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

0
ответ дан 23 November 2019 в 23:12

Теги

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