
私はDebian Stretchを新しくインストールし(1週間前)、勉強に必要なプログラムをロードしました。その一環として、私は次のプログラムをインストールしました。グランドADS。ただし、端末で実行しようとすると、次のエラーが表示されます。
grads: シンボル検索エラー: /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4: 未定義シンボル: libssh2_scp_recv2
どういう意味ですか?この問題をどのように修正できますか?
アップデート1:
適切なポリシーの出力:
パッケージファイル:
100 /var/lib/dpkg/status
release a=now
500 http://deb.debian.org/debian stretch/non-free amd64 Packages
release v=9.5,o=Debian,a=stable,n=stretch,l=Debian,c=non-free,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian stretch/contrib amd64 Packages
release v=9.5,o=Debian,a=stable,n=stretch,l=Debian,c=contrib,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian stretch/main amd64 Packages
release v=9.5,o=Debian,a=stable,n=stretch,l=Debian,c=main,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian stretch-updates/main amd64 Packages
release o=Debian,a=stable-updates,n=stretch-updates,l=Debian,c=main,b=amd64
origin deb.debian.org
500 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
release v=9,o=Debian,a=stable,n=stretch,l=Debian-Security,c=main,b=amd64
origin security.debian.org
Pinned packages:
アップデート2:
奇妙なことに、Whiskerメニューからプログラムを実行し、新しいターミナルウィンドウで開き、テストに従って期待どおりに動作します。
アップデート3:
出力 apt policy libssh2-1
:
libssh2-1:
Installed: 1.7.0-1
Candidate: 1.7.0-1
Version table:
*** 1.7.0-1 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
100 /var/lib/dpkg/status
出力libcurl3-gnutls
:
:
libcurl3-gnutls:
Installed: 7.52.1-5+deb9u7
Candidate: 7.52.1-5+deb9u7
Version table:
*** 7.52.1-5+deb9u7 500
500 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
100 /var/lib/dpkg/status
7.52.1-5+deb9u6 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
答え1
出力は、apt policy
関連ライブラリが最新の状態であることを示しています。 Debianは互いに連携する一貫したパッケージセットを提供しているため、このエラーは、ご使用の環境に誤ったライブラリが選択されているという問題があることを示しています。
あなたが見つけたように、これはあなたの.bashrc
。ldd $(which grads)
例えば検査に合格しましたLD_LIBRARY_PATH
。