6

地獄私はlibtorrentをインストールするのに非常に苦労していて、問題が何であるかわからない。私はオンラインで同様のエラーをたくさん見ましたが、解決策は役に立たず、エラーメッセージは比較するにはあまりにも曖昧であると確信しています。

./configureを実行すると、

****

Building libtorrent-rasterbar 0.16.5

Checking for a C/C++ compiler to use:
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking whether gcc and cc understand -c and -o together... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking whether g++ understands -c and -o together... yes
.
..
.
Checking for boost libraries:
checking for boostlib >= 1.36... yes
checking whether the Boost::System library is available... yes
configure: error: Boost.System library not found. Try using --with-boost-system=lib

****

それから私は提案を使用します、そして違いは底が言うということです

****

Checking for boost libraries:
checking for boostlib >= 1.36... yes
checking whether the Boost::System library is available... yes
checking for exit in -llib... no
checking for exit in -lboost_system-lib... no
configure: error: Could not link against boost_system-lib !

****

config.logファイルにエラーがあります

****

configure:16572: result: no
configure:16537: checking for exit in -lboost_system-lib
configure:16562: gcc -o conftest -lpthread -g -O2 -fvisibility=hidden  -I/usr/include  -L/usr/lib conftest.c -lboost_system-lib  -lpthread   >&5
conftest.c:33: warning: conflicting types for built-in function 'exit'
/usr/bin/ld: cannot find -lboost_system-lib
collect2: ld returned 1 exit status

****

どんな洞察も非常に高く評価されます

インストール後

apt-get install libboost-system-dev

apt-get install libboost-filesystem-dev libboost-thread-dev

Checking features to be enabled:
checking whether encryption support should be enabled... yes
configure: encryption support: now checking for the OpenSSL library...
checking for pkg-config... /usr/bin/pkg-config
checking for openssl/ssl.h in /usr/local/ssl... no
checking for openssl/ssl.h in /usr/lib/ssl... no
checking for openssl/ssl.h in /usr/ssl... no
checking for openssl/ssl.h in /usr/pkg... no
checking for openssl/ssl.h in /usr/local... no
checking for openssl/ssl.h in /usr... no
checking whether compiling and linking against OpenSSL works... no
configure: error: OpenSSL library not found. Try using --with-openssl=DIR or disabling encryption at all.
4

6 に答える 6

11

libboost-systemをインストールする必要があります。

Debian / Ubuntuを使用している場合は、次のようにapt-getを使用します。

$ apt-get install libboost-system-dev

また、インストールする必要があるかもしれません...

$ apt-get install libboost-filesystem-dev libboost-thread-dev
于 2012-10-24T22:05:32.700 に答える
4

すべての依存関係をインストールする最も簡単な方法は、apt-getを使用することです。

sudo apt-get build-dep python-libtorrent
于 2013-03-28T01:55:08.987 に答える
3

これは少し古いことは知っていますが、OpenSSLの問題を解決するには、OpenSSLライブラリをでインストールする必要がありますsudo apt-get install libssl-dev

于 2015-01-25T03:09:20.163 に答える
2

CentOSユーザーの場合、boost-develをインストールすることをお勧めします。

# yum install boost-devel

しかし、それでも同じエラーが発生しました。もう1つ指摘したいのですが、私が使用しているCentOS6.4には古いgccコンパイラがありました。

# g++ --version
g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

新しいバージョンのgccをインストールすることで、その特定のエラーを取り除くことができました。g ++(GCC)4.8.2バージョンを使用しましたが、今回は次のコマンドを呼び出すと機能しました。

# ./configure --with-boost-libdir=/usr/lib64

この時点以降も、ここに投稿されたOPのようなopensslヘッダーが見つからない場合があります。この投稿は、エラーを克服するのに役立ちます。openssl-devel(CentOSの場合)またはlibssl-dev(Debianの場合)をインストールする必要がある場合があります。または、

# ./configure --with-boost-libdir=/usr/lib64 --without-ssl

システムにopensslヘッダーがインストールされている場合は、-with-opensslフラグを使用する必要はありません。または、少なくとも私はそれを使用する必要はありませんでした。

これは古い投稿ですが、私のような他の誰かに役立つことを願っています。

于 2015-01-19T06:45:26.610 に答える
0

OpenSSLの問題を回避するために、OpenSSL暗号化を無効にする「libtorrent-rasterbar」を作成できます。

例えば:

./configure --disable-debug --disable-encryption --prefix=/opt/libtorrent-rasterbar

そして、「make」+「makeinstall」

よろしく

于 2016-03-18T01:25:45.070 に答える
0

受け入れられた答えは私にはうまくいきませんでした。うまくいったのは、configureスクリプトファイルを編集し、それらの行を削除することでした。

if test -z "$BOOST_SYSTEM_LIB"; then :
  as_fn_error $? "Boost.System library not found. Try using --with-boost-system=lib" "$LINENO" 5
fi

これらの行は、BOOST_SYSTEM_LIB環境変数が存在し、空ではないことを確認しているようです。

于 2017-01-15T20:55:40.670 に答える