共有(シェアード)ライブラリをLinuxに認識させるコマンド。
“/etc/ld.so.conf”に記述したPATHに対してリンクを張っていく
OpenSSL等をソースからビルドした時には、自ら“ld.so.conf”にPATHを記述する必要がある。
しかし、システムの開発要件によっては全部のライブラリをソースからという無茶振りの時に一々追記していくのは骨が折れる作業。
なので、以下のスクリプトを作成して一括登録出来るようにする。
# mkdir /root/script # cd /root/script # vi ldconfig_path.sh
#!/bin/sh PATH=/bin:/sbin find /usr/local -type d -name "lib" | grep -v "source" | grep -E -v 'local\/lib$' > /etc/ld.so.conf.d/user_make.conf ldconfig
#!/bin/sh PATH=/bin:/sbin:/usr/bin LDCONFIG_FILE=/etc/ld.so.conf.d/user-lib.conf rm ${LDCONFIG_FILE} > /dev/null 2>&1 for DIRECTORY in `find /usr/local -maxdepth 1 -type l` do for LIB_DIR in `ls ${DIRECTORY} | egrep -i "lib" | tr '\n' ' '` do if ! [ "${LIB_DIR}" = "" ]; then echo ${DIRECTORY}/${LIB_DIR} >> ${LDCONFIG_FILE} fi done done ldconfig
# chmod 750 ldconfig_path.sh # chown root.root ldconfig_path.sh # ./ldconfig_path.sh