Sometimes you have a need to stay current with upstream releases, even though you’d like to rely on the stability of your base distribution. Here’s how this can be accomplished quick and dirty. Lines started with a # are to be executed as root, lines starting with $ can be run as a regular user.
First lets install every single dependency Transmission needs and which has a usable version in the Debian respository.
# apt-get install ca-certificates libcurl4-openssl-dev libssl-dev pkg-config build-essential checkinstall intltool
Traditionally, libevent is also needed, but Transmission depends on version numbers only rarely found in Debian. So let’s start with compiling libevent in a directory of your choice. Browse to http://libevent.org/ and get the latest version.
$ cd /var/tmp $ wget https://github.com/downloads/libevent/libevent/libevent-2.0.18-stable.tar.gz $ tar xzf libevent-2.0.18-stable.tar.gz $ cd libevent-2.0.18-stable $ CFLAGS="-Os -march=native" ./configure && make
Now, we’d really like to upgrade to a new version in the future, so there should be a mechanism other than the classic make install which keeps count of what went where (and at best this isn’t a piece of paper). So we build a very simple Debian package from the compiled files and install it. Basically you just enter the following command and hit return until a nice text message tells you that all is done.
Now we need to prepare Transmission for compilation by configuring the source, same thing as with libevent.
$ cd /var/tmp $ wget http://download-origin.transmissionbt.com/files/transmission-2.51.tar.bz2 $ tar xjf transmission-2.51.tar.bz2 $ cd transmission-2.51 # CFLAGS="-Os -march=native" ./configure && make && checkinstall