Esto no es un duplicado porque se trata de una peculiaridad que noté cuando la uso /etc/ld.so.conf.
Para obtener las rutas en las que el enlazador dinámico busca bibliotecas, ejecuto el comando ldconfig -v | grep -v "^"$'\t' | sed "s/:$//g". Cuando /etc/ld.so.confno tiene rutas enumeradas en él. El resultado del comando anterior es
/lib
/usr/lib
Pensé que busca /libprimero y luego /usr/lib. Cuando agrego una nueva ruta, como /usr/local/lib, a /etc/ld.so.confy luego rehacer /etc/ld.so.cache, la salida de se ldconfig -v | grep -v "^"$'\t' | sed "s/:$//g"convierte en
/usr/local/lib
/lib
/usr/lib
Esto me parece extraño porque si estoy en lo cierto, el orden en que se buscan los directorios enumerados es de arriba a abajo, entonces se buscan directorios adicionales antes /liby /usr/lib. Que los directorios adicionales se busquen antes que los directorios de confianza no es extraño por sí solo, pero cuando /libse busca antes /usr/lib, eso es extraño porque /bin& /sbinse busca después /usr/bin& /usr/sbinadentro PATH.
Incluso si las rutas enumeradas por ldconfig -v | grep -Ev "^"$'\t' | sed "s/:$//g"se buscaran de abajo hacia arriba, seguiría siendo un orden sesgado porque se buscarían directorios adicionales después de los de confianza mientras se /libbuscarían /usr/lib.
Entonces, ¿cuál es el orden en el que ld.sobusca rutas en las bibliotecas? ¿Por qué se /libbusca antes /usr/lib? Si no es así, ¿por qué se buscan directorios adicionales /lib?
fuente

PATH.