web-dev-qa-db-ja.com

エラー:curl:/usr/local/lib/libcurl.so.4:利用可能なバージョン情報なし(curlに必要)

こんにちは、tclエラーからcurlを実行するとこのエラーが発生します。curl:/usr/local/lib/libcurl.so.4:バージョン情報がありません(curlに必要)

 curl --version 
 curl 7.40.0(x86_64-unknown-linux-gnu)libcurl/7.40.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3 
プロトコル:dictファイルftp ftps Gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp 
機能:IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets 
root@lasdf :/usr/local/lib$ ll
drwxr-xr-x  5 root root    4096 Feb  4 17:33 ./
drwxr-xr-x 10 root root    4096 Aug  2  2014 ../
-rw-r--r--  1 root root  878996 Feb  4 17:33 libcurl.a
-rwxr-xr-x  1 root root     979 Feb  4 17:33 libcurl.la*
lrwxrwxrwx  1 root root      16 Feb  4 17:33 libcurl.so -> libcurl.so.4.3.0*
lrwxrwxrwx  1 root root      16 Feb  4 17:33 libcurl.so.4 -> libcurl.so.4.3.0*
-rwxr-xr-x  1 root root  472203 Feb  4 17:33 libcurl.so.4.3.0*
11
user4457475

CMAKEのインストールでlibcurl.so.4: no version information availableにも問題がありました。 cmakeと入力すると、出力は次のとおりです。

cmake: /usr/local/lib/libcurl.so.4: no version information available     (required by cmake)
Segmentation fault (core dumped)`

私はこれを次のようにして解決しました。

まず、libcurl.so.4のパスを見つけます:

locate libcurl.so.4

結果は次のとおりです。

/home/chenjian/software/curl-7.20.0/lib/.libs/libcurl.so.4
/home/chenjian/software/curl-7.20.0/lib/.libs/libcurl.so.4.2.0
/usr/lib/x86_64-linux-gnu/libcurl.so.4
/usr/lib/x86_64-linux-gnu/libcurl.so.4.3.0
/usr/local/lib/libcurl.so.4
/usr/local/lib/libcurl.so.4.2.0

次に、libcurl.so.4、typeのリンクを見つけます。

ls -l /usr/local/lib/libcurl.so.4

結果:

lrwxrwxrwx 1 root root 16 Aug 16 21:15 /usr/local/lib/libcurl.so.4 -> libcurl.so.4.2.0

第三に、それを削除してlibcurl.so.4.3.0へのリンクを再構築します:

Sudo rm /usr/local/lib/libcurl.so.4
Sudo ln -s /usr/lib/x86_64-linux-gnu/libcurl.so.4.3.0 /usr/local/lib/libcurl.so.4

次に、確認してください:

 ls -l /usr/local/lib/libcurl.so.4

さて、出力は次のとおりです。

lrwxrwxrwx 1 root root 42 Aug 24 09:23 /usr/local/lib/libcurl.so.4 -> /usr/lib/x86_64-linux-gnu/libcurl.so.4.3.0

次に、cmake -versionと入力すると、結果は

cmake version 3.2.2

CMake suite maintained and supported by Kitware (kitware.com/cmake).

バグを修正した後、私と同じように、Origin ubuntu環境には複数のcurlがありましたが、私は別のcurlをインストールしました。

45
CHENJIAN

Ubuntu 12.04システムでは、/usr/bin/curlが既に配置されているときに/usr/local/bin/curlcurlインストール可能パッケージから)を実行すると、このエラーが発生しました。 which curlを実行し、どれが実行されているかを確認します-/usr/bin/curlの場合は、代わりに/usr/local/bin/curlを実行してください。

私は、ユーザーとは異なるパスで実行されるcrontabのコンテキストでこれに遭遇しました。クイックフィックスは、/usr/local/bin/curlcurlsを明示的に指定することでした

3
Allen Luce

最新のubuntu(18.4)では、Sudo apt-get remove libcurl.
そして必要なものを再インストールします。例えば、curl

1
Kuzeko

私に関しては、私のシステムはデフォルトのカールを持つubuntu16です。しかし、ソースコードでcurlをインストールします。

root@xy:~/cmake_practice/cmake_build/build_demo9# locate libcurl.so.4
/home/xy/anaconda2/lib/libcurl.so.4
/home/xy/anaconda2/lib/libcurl.so.4.4.0
/home/xy/anaconda2/pkgs/curl-7.55.1-hcb0b314_2/lib/libcurl.so.4
/home/xy/anaconda2/pkgs/curl-7.55.1-hcb0b314_2/lib/libcurl.so.4.4.0
/usr/lib/x86_64-linux-gnu/libcurl.so.4
/usr/lib/x86_64-linux-gnu/libcurl.so.4.4.0
/usr/local/lib/libcurl.so.4
/usr/local/lib/libcurl.so.4.4.0

その後、新しいlibcurl.soが表示されるので、最近インストールします(5月20日19:54):

root@xy:~/cmake_practice/cmake_build/build_demo9# ll -th /usr/local/lib/libcurl.so.4
lrwxrwxrwx 1 root root 16 May 20 19:54 /usr/local/lib/libcurl.so.4 -> libcurl.so.4.4.0*

そして、私はそれらをrmします:

root@xy:~/cmake_practice/cmake_build/build_demo9# rm -f /usr/local/lib/libcurl.so.4
root@xy:~/cmake_practice/cmake_build/build_demo9# rm -f /usr/local/lib/libcurl.so.4.4.0

それを確認してください:

root@xy:~/cmake_practice/cmake_build/build_demo9# cmake --version
cmake version 3.5.1

CMake suite maintained and supported by Kitware (kitware.com/cmake).
root@xy:~/cmake_practice/cmake_build/build_demo9# 
0
Jayhello

Ubuntu 16.04では、anaconda binをPATHにエクスポートし、libをLD_LIBRARY_PATHにエクスポートするときに同じ問題に遭遇しました。 conda-forgeからcmakeをインストールして解決しました:conda install cmake。私としてanacondaを使用している場合、このメソッドを使用して修正できます。それ以外の場合は、他のソリューションを使用します。

0
chaokunyang

ここに簡単な解決策があります。

Libcurlをインストールして問題に遭遇した可能性があります。ただし、インストールしたlibcurlを使用して独自のcmakeを再構築するだけで解決できます(LD_LIBRARY_PATHを使用してlibcurlを指定します)

私のために働く。 (Ubuntu 16.04、libcurl 4.5およびcmake 3.11.3)

0
DAG

Curl 7.5.61の新しいバージョンをビルドしてからアプリケーションを再構築しているときに、この問題が発生しました。私にとっての解決策は、--enable-versioned-symbolsこれはデフォルトで無効になっています。

./configure --enable-versioned-symbols --prefix=$PWD
0
newbie