libreadline.so.6: 공유 개체 파일을 열 수 없습니다. libreadline-7과 dev가 있습니다.

libreadline.so.6: 공유 개체 파일을 열 수 없습니다. libreadline-7과 dev가 있습니다.

일부 네트워크 시뮬레이션을 위해 vtysh를 실행하려고 할 때 다음 오류가 발생합니다.

vtysh: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory

현재 libreadline-dev 및 libreadline-7을 설치하고 /lib/x86_64-linux-gnu/libreadline.so.6에 libreadline.so.7에 대한 심볼릭 링크를 만들었지만 아무 소용이 없습니다. 나는 그것이 다른 길을 찾고 있다고 가정하고 있지만 그러한 문제를 해결하는 방법을 잘 모르겠습니다.


아래 조언은 그다지 운이 좋지 않습니다. 아래 제안된 대로 소스에서 readline6.3을 컴파일한 후 출력은 다음 ldconfig -v | grep readline과 같습니다.

/sbin/ldconfig.real: Can't stat /usr/local/lib/x86_64-linux-gnu: No such file or directory
/sbin/ldconfig.real: Path `/lib/x86_64-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/usr/lib/x86_64-linux-gnu' given more than once
    libreadline.so.6 -> libreadline.so.6.3
    libreadline.so.7 -> libreadline.so.7.0
/sbin/ldconfig.real: /lib/x86_64-linux-gnu/ld-2.27.so is the dynamic linker, ignoring

    libguilereadline-v-18.so.18 -> libguilereadline-v-18.so.18.0.0
/home/gdc/Desktop/readline-6.3:
/sbin/ldconfig.real: /lib32/ld-2.27.so is the dynamic linker, ignoring

답변1

심볼릭 링크를 만드는 것은 작동하지 않으므로 유일한 다른 옵션은 소스에서 코드를 컴파일하여 환경에 추가하는 것입니다. 여기에서 소스 코드를 얻을 수 있습니다 readline-6.3:

http://ftp.gnu.org/gnu/readline/

컴파일 후 /etc/ld.so.conf.d/x86_64_readline-gnu.conf 파일을 생성하고 /path/to/readline/lib컴파일 위치에 맞게 라인을 입력합니다. 그런 다음 다음 명령을 실행합니다.

ldconfig -v | grep readline

libreadline.so.6귀하 의 환경에서 이를 볼 수 있으며 vtysh문제 없이 실행됩니다.

관련 정보