日期:2014-05-16  浏览次数:20595 次

linux下libtorrent库编译

  在网上找了一个安装教程最后都没有搞定,艰难的啃了源代码里面的E文帮助文档以后,终于编译过了!

  痛苦的过程,无法忘记,特此记录下,留待将来借鉴!


英文原文在此:

http://www.rasterbar.com/products/libtorrent/building.html

原文中,说有几种方法可以编译,我这里只搞定了bjam这种方式,autotool.sh这条路我是没走通!

[root@vxwork2 libtorrent]# ./autotool.sh


Bootstrapping autotools for libtorrent-rasterbar


Checking autotools requirements:


...cking for autoconf >= [2.63]
  testing autoconf... ./autotool.sh: line 54: [: [2: integer expression expected
./autotool.sh: line 55: [: [2: integer expression expected
: integer expression expected]
: integer expression expected]
found 2.59
Checking for automake >= [1.11...
  testing automake... ./autotool.sh: line 54: [: [1: integer expression expected
./autotool.sh: line 55: [: [1: integer expression expected
too old (found version 1.9.6)
  testing automake-1.11... not found.
  testing automake-1.10... not found.
***Error***: automake >= [1.11 not found.

以上错误,我实在搞不定,吐血放弃!!!


第一步:下载libtorrent源码

svn签出地址:https://libtorrent.svn.sourceforge.net/svnroot/libtorrent

只要签出trunk目录就行了,其他一堆tags和branch没必要


第二步:装boost库

1)下载boost库,这个就不多说了,我版本比较老了:boost_1_39_0,以前下载的。

2)tar到linux下某目录,如:/home/cjp/boost_1_39_0

3)编译bjam,参考boost1.39的help文档:

  $ cd /home/cjp/boost_1_39_0 

  $ ./bootstrap.sh

这样就会生成bjam可执行文件。

4)把bjam文件copy到系统的bin目录,如: cp bjam /usr/bin

5)需要设置两个环境变量,如下:

export BOOST_BUILD_PATH=/home/cjp/boost_1_39_0/tools/build/v2
export BOOST_ROOT=/home/cjp/boost_1_39_0

6)bjam boost=source 编译

编译完成!

千万要加boost=source这个选项,不然找不到boost库的文件

include/libtorrent/error_code.hpp:45:31: 错误:asio/error_code.hpp:没有那个文件或目录 

。。。