Wednesday 12 August 2009

How-To: Compile and Install Latest VLC in Debian Lenny

This tutorial will show how to compile and install the latest VLC from source in Debian Lenny in several steps. The current version at the time of writing is VLC 1.0.1, so the tutorial should work successfully for it.

1. Install the development packages
As root, type the following two commands:

apt-get install build-essential

apt-get install libassa3.5-5-dev libv4l-ruby1.8 debhelper dh-buildinfo gettext quilt nasm yasm libxul-dev liba52-0.7.4-dev libaa1-dev libasound2-dev libcaca-dev libcdio-dev libdca-dev libdvbpsi4-dev libaudiofile-dev libavahi-client-dev libavcodec-dev libdvdnav-dev libdvdread-dev libesd0-dev libfaad-dev libflac-dev libfreetype6-dev libfribidi-dev libggi2-dev libgl1-mesa-dev libglib2.0-0 libgnutls-dev libhal-dev libid3tag0-dev libidl0 libimlib2-dev libjack-dev liblircclient-dev liblivemedia-dev liblua5.1-0-dev libmad0-dev libmatroska-dev libmodplug-dev libmpcdec-dev libmpeg2-4-dev libncursesw5-dev libnotify-dev libogg-dev libpng12-dev libpostproc-dev libpulse-dev libqt4-dev libschroedinger-dev libsdl-image1.2-dev libsdl1.2-dev libvcdinfo-dev libvorbis-dev libx11-dev libx264-dev libxext-dev libxml2-dev libxpm-dev libxt-dev libxv-dev pkg-config qt4-dev-tools zlib1g-dev

The first one will install the meta package build-essential, which depends on compilation tools, while the latter will install development libraries needed to compile VLC.

3. Make a symbolic link in /usr/lib
Make a symbolic link in /usr/lib/ which will point to the libGL library. This may depend on which driver you have installed. You may not need to do this step. For example, I used here:

ln -s /usr/lib/libGL.so.173.14.09 /usr/lib/libGL.so

2. Download the source code
Download the VLC source tarball from the official website (direct link here) and uncompress it:

tar -xjf vlc-1.0.1.tar.bz2

4. Compile and install
Now make sure the current working directory is vlc-1.0.1 and issue the following commands:

./configure --disable-nls --disable-mozilla --disable-live555
make
make install

The last command as root. Without the switches --disable-nls and --disable-mozilla I got the error configure: error: Buggy GNU/libc (version 2.5 - 2.7) present. VLC would crash; there is no viable work-around for this. so I had to disable them.

Finally, run ldconfig as root:

ldconfig

This should be all. Run VLC by typing vlc in a terminal or hitting Alt+F2 and typing vlc in the run box that appears.

You can also install as normal user by changing the installation prefix, e.g.:

./configure --prefix=/home/USER/usr --disable-nls --disable-mozilla --disable-live555
make
make install

Just make sure to replace USER with your username and include /home/USER/usr/bin in your $PATH variable.

2 comments:

Chris J said...

This is great, but I do see doing it this way. Now your system doesn't know about VLC, or what packages it needs, and could possibly break it when you do an apt-get update (by breaking a dependency).

A better way to have done this would have been to make a debian package out of the VLC source (see http://www.debian.org/doc/manuals/maint-guide/index.en.html) that way, it'll be known by your system.

It's a lot more work but you won't have to worry about things breaking further down the line.

Loris said...

to Chris J: thats actually what I just did, and the instructions here helped me.

you can find the instructions and explainations there: http://forums.debian.net/viewtopic.php?f=6&t=43735

Please tell me if there are problems !