Compiling Transmission Bittorrent for Debian

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.

1. Dependencies

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

2. libevent

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.

# checkinstall

3. Transmission

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

8 comments

  1. Trying to configure transmission-2.51, but it says:
    line 18685: intltool-update: command not found
    checking for intltool >= 0.35.0… found
    configure: error: Your intltool is too old. You need intltool 0.35.0 or later.

    Could you please help me?

  2. It won’t compile the GTK GUI since it requires a newer version of GTK than what’s available in Squeeze. after configuring the following message appears:

    Build GTK+ client: no (GTK+ none)

  3. For me, libevent fails with:

    dpkg-deb: error: parsing file ‘/var/tmp/tmp.OuEjWG0sC2/package/DEBIAN/control’ near line 7 package ‘libevent-2.0.19′:
    error in Version string ‘stable-1′: version number does not start with digit

    Can you help?? (I’m using PeppermintOS….)

    1. Hi Sam,

      when doing the checkinstall step in my tutorial, you get lots of messages where I say to just press enter. To solve this error, when asked to enter a version number, enter 2.0.19 and delete what checkinstall thinks the version is. I guess it will say stable-1, so thats what you replace with 2.0.19. Did it work?

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>