debian编译rtorrent相关资料文摘
以下面这个为准:再下面的只是参考
error while loading shared libraries的解決方法
注意xmlrpc 的版本不能低于1.07
debian网站上下载的安装包如何安装他的所有依赖包?
apt-get install package-name 这样会提示的,如果还缺少什么包,就直接再加在后来就行了,apt很牛,可以解决大部分的软件依赖问题,我喜欢ubuntu
./tests: error while loading shared libraries: xxx.so.0:cannot open shared object file: No such file or directory
那就表示系統不知道xxx.so 放在哪個目錄下。
這個時候就要在/etc/ld.so.conf中加入xxx.so所在的目錄。
一般而言,有很多so檔會在/usr/local/lib這個目錄下,所以在/etc/ld.so.conf中加入/usr/local/lib這一行,可以解決此問題。
將 /etc/ld.so.conf存檔後,還要執行/sbin/ldconfig 來更新一下才會生效。
rTorrent 是可以linux文本模式下的BT下载软件,适合用在没有XWINDOW的环境使用 适合在远程终端下操作
支持 UTF-8,文件不会有乱码
0.8.0 版后支持 DHT
本文在Redhat AS 5.4安装,同样适用于Centos5
安装篇:
----------------------
先确认是否已经安装以下套件 (等会编译会用到,沒有這些套件无法完成编译)
先安装 gcc ++ ncurses ncurses-devel libtool automake openssl openssl-devel
实际安装如下
G++ 编译必须安装文件
安装checkinstall 便于制作安装包 用checkinstall 代替马克install
Subversion 在线下载最新版本文件用
Make 不安装在make时会提示找不到命令
Automake 执行./autogen.sh
libcurl4-openssl-dev ??? 不安装编译libtorrent时会出错
ncurses-dev libtool automake openssl make libsigc++-2.0-dev 后安装 libcurl4-openssl-dev subversion
如果没有这些套件,可以采用yum来安装
yum install gcc gcc-c++ ncurses ncurses-devel libtool automake openssl openssl-devel
下载软件:
1.sigc++-2.0
http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.2/libsigc++-2.2.0.tar.gz
2.curl
http://curl.haxx.se/download/curl-7.19.7.tar.gz
3.xmlrpc-c 要svn下载新版本
http://sourceforge.net/projects/xmlrpc-c/files/ (进入下载最新版)
4.libtorrent
http://libtorrent.rakshasa.no/downloads/libtorrent-0.12.6.tar.gz
5.rtorrent
http://libtorrent.rakshasa.no/downloads/rtorrent-0.8.6.tar.gz
安装软件:
----------------------
tar zvxf libsigc++-2.2.0.tar.gz
cd libsigc++-2.2.0
./configure --prefix=/usr
make
make install
tar zvxf curl-7.19.7.tar.gz
cd curl-7.19.7
./configure --prefix=/usr
make
make install
tar zvxf libtorrent-0.12.6.tar.gz
cd libtorrent-0.12.6
./autogen.sh
./configure --prefix=/usr
注:此时可能会出现 No package 'sigc++-2.0' found 错误。
可以添加一个环境变量解决
vi /etc/profile
在后面加入 export PKG_CONFIG_PATH=/usr/lib/pkgconfig
. /etc/profile
即可解决
make
make install
../../../libtool: line 1189: Xblock.lo: command not found
../../../libtool: line 1194: libtool: compile: cannot determine name of library object from `': command not found
make[3]: *** [block.lo] Error 1
安装过程可能会出现这个错误,把安装目录内的 libtool 文件里的 $echo 替换成 $ECHO ,重新编译,即可通过。
tar zvxf xmlrpc-c-1.06.38.gz
cd xmlrpc-c-1.06.38
./configure --disable-cplusplus
make
make install
tar zvxf rtorrent-0.8.6.tar.gz
cd rtorrent-0.8.6
./configure --prefix=/usr --with-xmlrpc-c
make
make install
到此安装已经完成,测试是否成功?
# rtorrent
如果出现rtorrent 的界面就表示已经成功
按 <Ctrl> + <q> 退出
rTorrent 设置篇:
----------------------------
默认是没有配置文件的,需要手动添加
这里有官方的参考范例:
http://libtorrent.rakshasa.no/browser/trunk/rtorrent/doc/rtorrent.rc?rev=1047
配置文件必须放在(使用用户目录)底下「.rtorrent.rc」这个文件
以下本人的配置文件,大家可以参考下
#最小允许peer数
min_peers = 3
#最大允许peer数
max_peers = 500
#最大同时上传用户数
max_uploads = 10
#最大下载950k/s 光纤用户使用,adsl请酌情修改
download_rate = 950
#最大上传200k/s 光纤用户使用,adsl请酌情修改
upload_rate = 200
#下载目录
directory = ~/universe
#下载历史目录(此目录中包括下载进度信息和DHT节点缓存)
session = ~/universe/session
#(配置自动监视,把bt种子扔进~/universe目录就自动下载)
schedule = watch_directory,5,5,load_start=~/universe/*.torrent
#(配置自动监视,把bt种子从~/universe目录拿走就自动停止下载)
schedule = untied_directory,5,5,stop_untied=
#硬盘空间低于100M就自动停止一切下载)
schedule = low_diskspace,5,60,close_low_diskspace=100M
#(在总上传量达到200M的情况下上传/下载率达到200%,或者在总上传量不足200M情况下上传/下载率达到2000%,则停止上传)
schedule = ratio,60,60,"stop_on_ratio=200,200M,2000"
#bt监听端口
port_range = 9400-9500
#随机从上面范围内选择端口
port_random = yes
######开启DHT######
dht = on
#DHT所用的UDP端口
dht_port = 9501
#种子交换功能
peer_exchange = yes
#(上传缓存,每个种子10M,小内存用户请酌情修改)
send_buffer_size = 10M
#(下载缓存,每个种子20M,小内存用户请酌情修改)
receive_buffer_size = 20M
#(修改编码以避免中文乱码)
encoding_list=UTF-8
#是nTorrent监控管理软件用(需要xmlrpc-c支持,如果没有加入xmlrpc-c 请注释掉)
scgi_port = :5000
rTorrent除了可以使用nTorrent远程管理之外,可以使用screen 管理,关闭终端程序仍会继续运行
screen rtorrent 启动
关闭终端,重新进入后 可以使用 screen-r 调取
安裝 Cygwin
從 Cygwin 的網頁下載 Cygwin 1.7.1 (或更新的版本)
為了可以正常編譯以及執行 rTorrent ,你必須安裝以下套件:
gcc automake openssl
gcc gcc-c++ ncurses ncurses-devel libtool automake openssl openssl-devel
g++
* gcc debian安装apt-get install build-essential
*libcurl-develdebian下是libcurl4-openssl-dev
*libncurses-devel
*libtool
*make
*openssl-develdebian是libssl-dev前面已经安装
*patch
*pkg-config前面已经安装
*subversion
*wget升级
*cppunitdebian是libcppunit-dev
*libgnomecanvas(不確定需不需要)
* ncurses debian 是 ncurses-dev首先
先在 /usr/local/ 下建立一個叫做 src 的資料夾。(接下來的四個步驟都會在這個資料夾底下操作)
mkdir /usr/local/src
cd /usr/local/src
安裝 libsigc++
從 Gnome FTP 下載最新版的 libsigc++ 的原始碼,來編譯以及安裝。 (以下面為例,最新版本是 2.2.7 版)
為了避免在編譯 rTorrent 時,會找不到 Sigc++ 2.0 的問題,在 ./configure libsigc++ 時,會加上 -prefix=/usr 。
Debian 安装libsigc++-2.0-dev
wget http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.2/libsigc++-2.2.7.tar.bz2
tar xjvf libsigc++-2.2.7.tar.bz2
cd libsigc++-2.2.7
./configure -prefix=/usr
make
make install
cd ..
安裝 libTorrent
透過 SVN 來下載最新版本的 libTorrent 的原始碼來編譯以及安裝。同"安裝 libsigc++",為了避免在編譯 rTorrent 時,會找不到 libtorrent 的問題,在 ./configure libtorrent 時,會加上 -prefix=/usr 。 (除非編譯時出問題,不然是可以不用加)
Debian 必须安装install automake 才能autogen.sh
svn co svn://rakshasa.no/libtorrent/trunk/libtorrent libtorrent-svn
cd libtorrent-svn
./autogen.sh
./configure -prefix=/usr --disable-mincore
make
make install
cd ..
安裝 XMLRPC-C (選擇性安裝)
透過 XMLRPC-C 來控制 rTorrent。
為了避免在 ./configure XMLRPC-C 時出問題,會加上 --disable-cplusplus 。
如果在編譯 rTorrent 時,出現找不到 XMLRPC-C 時,請在 ./configure XMLRPC-C 加上 -prefix=/usr 。
svn co https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced/ xmlrpc-c-svn
cd xmlrpc-c-svn
./configure --disable-cplusplus
make
make install
cd ..
安裝 rTorrent
透過 SVN 來下載最新本版的 rTorrent 的原始碼。
為了避免編譯rTorrent時,會出現錯誤,我們會在編譯rTorernt前打上一個修正補丁。
補丁提供:http://rtwi.jmk.hu
為了修正在編譯rTorrent時,會找不到ncursesw的問題,請在rtorrent-svn資料夾下的configure.ac裡,加入以下:debian不存在这个问题
PKG_CHECK_MODULES(ncursesw,ncursesw>=5.7,
CXXFLAGS="$CXXFLAGS$ncursesw_CFLAGS";
LIBS="$LIBS$ncursesw_LIBS")
如果要使用XMLRPC-C的功能,請在./configurerTorrent時,加上--with-xmlrpc-c。
svncosvn://rakshasa.no/libtorrent/trunk/rtorrentrtorrent-svn
cdrtorrent-svn
wgethttp://rtwi.jmk.hu/downloads/misc/rtow.diff
patch-p0<rtow.diff
./autogen.sh
./configure--with-xmlrpc-c
make
makeinstall
cd..