lördag 29 november 2014

Kompilering av rtorrent i Ubuntu 14.10

Okej, då var det dags för ännu en guide till hur man kompilerar rtorrent, denna gången under Ubuntu Server 14.10.
En hel del nya problem (som vanligt), men nu finns åtminstone allt som behövs via git eller apt-get!

Vi börjar med att installera dependencies
apt-get install g++ automake make libcppunit-dev libcurl4-nss-dev libncurses5-dev libsigc++-2.0-dev libtool libxmlrpc-core-c3-dev pkg-config libssl-dev

Sedan är det dags att klona ut och kompilera källkoden.

Installalation av c-ares
git clone https://github.com/bagder/c-ares.git
cd c-ares
./configure
make
sudo make install

Installation av curl
git clone https://github.com/bagder/curl.git
cd curl
./buildconf
./configure --enable-ares --with-ssl
make
sudo make install

Installation av libtorrent
git clone https://github.com/rakshasa/libtorrent.git
cd libtorrent
./autogen.sh (obs felmeddelande!)
./autogen.sh
./configure
make
sudo make install

Installation av rtorrent
git clone https://github.com/rakshasa/rtorrent.git
cd rtorrent
./autogen.sh (obs felmeddelande!)
./autogen.sh
./configure --with-xmlrpc-c
make
sudo make install

När jag nu kör rtorrent med min befintliga konfigurationsfil får jag felmeddelanden;
Command "use_udp_trackers" does not exist.
Command "peer_exchange" does not exist.

Än så länge har jag inte listat ut varför, så jag startar rtorrent med "rtorrent -D", för att hantera deprecated-kommandon i konfigurationsfilen. Men både peer_exhange och use_udp_trackers är med i exempelkonfigurationen, så jag förstår inte vad som går snett.

Att köra med ./autogen.sh två gånger är inte standard, men det löser problemet som uppstår.
Första gången man kör skapas nämligen inte ltmain.sh, men andra gången man kör skapas den.

Så här ser det ut första gången:
sniglom@ubuntu ./autogen.sh
aclocal...
autoheader...
libtoolize... using libtoolize
automake...
configure.ac:10: installing './compile'
configure.ac:10: installing './config.guess'
configure.ac:10: installing './config.sub'
configure.ac:5: installing './install-sh'
configure.ac:10: error: required file './ltmain.sh' not found
configure.ac:5: installing './missing'
src/Makefile.am: installing './depcomp'
parallel-tests: installing './test-driver'

Här finns info om ltmain.sh som saknas:
http://www.gnu.org/software/automake/manual/html_node/Error-required-file-ltmain_002esh-not-found.html
http://stackoverflow.com/questions/22603163/automake-error-ltmain-sh-not-found

Men som jag förstår de två ovanstående länkarna ska det räcka att köra med autoreconf -i eller libtoolize, det gör det alltså inte. Däremot kan man köra autoreconf -i två gånger, för att installera ltmain.sh, men då kan man likväl köra autogen.sh två gånger.


Inga kommentarer:

Skicka en kommentar