¿Por qué `LD_LIBRARY_PATH` no es una variable de entorno integrada de Bash?

¿Por qué `LD_LIBRARY_PATH` no es una variable de entorno integrada de Bash?

DeUna introducción al CCG:

La forma más sencilla de configurar la ruta de carga es a través de la variable de entorno LD_LIBRARY_PATH. Por ejemplo, los siguientes comandos configuran la ruta de carga /opt/gdbm-1.8.3/libpara que libgdbm.sose pueda encontrar:

$ LD_LIBRARY_PATH=/opt/gdbm-1.8.3/lib
$ export LD_LIBRARY_PATH
$ ./a.out
Storing key-value pair... done.

¿Es correcto que LD_LIBRARY_PATHno sea una variable de entorno incorporada de Bash? De lo contrario, no es necesario export.

Un shell Bash se utiliza PATHpara localizar un programa externo y PATHes una variable de entorno incorporada de Bash.

Un shell Bash utiliza LD_LIBRARY_PATHpara localizar las bibliotecas compartidas en las que se basa un programa para ejecutarse, entonces, ¿por qué no hay LD_LIBRARY_PATHuna variable de entorno incorporada de Bash?

Respuesta1

LD_LIBRARY_PATHno lo usa el shell, lo usa el vinculador dinámico. Verman ld.sopara detalles.

Si no lo exporta, el vinculador no lo verá y no podrá actuar en consecuencia.

información relacionada