Icecast

Installing Icecast from Source (Linux)

This section covers the installation of Icecast on a Linux machine using the sources.  This means you will need to compile the application using the command line.

Right on the front page of the Icecast website is a 'Download' link: click on this and you will be taken to the download section of their site (http://www.icecast.org/download.php ).

At the time of writing the latest version is 2.3.1, however it is more than likely you will be working with a different version. No matter, unless you are reading this in 2040 the install process should pretty much be the same. You might notice that there are different version of the software available - there are some versions available for Redhat for example, and there is also a Windows version. The file we want is what is known as the source. This is a single compressed downloadable file which contains all the installation files. 

Download the source files. This is sometimes listed under 'all' in the 'Platform' sections of the Icecast site, but in any case you will recognise it because source files normally end in a .tar.gz suffix. In my example I will download the file (from http://www.icecast.org )
icecast-2.3.1.tar.gz
Ok... so I hope you have downloaded this file to somewhere you can access... normally I download installation files to my home directory in a directory called src . You can put your files anywhere you like as long as you can access them, although be a bit careful as you don't want to clutter up the file-system with installation files everywhere... I recommend putting it in your home directory. A home directory, by the way, is the directory with your username on it which is under the /home directory. To get to your home directory type the following in the terminal window:
cd /home/username

Where 'username' is your username, for example, my username is 'adam' so I would type:

cd /home/adam
or try this:
cd ~

The cd command means change directory and you use this command all the time to navigate around the file system. If you are in your home directory then look for a directory named src . To do this type :

ls -al
This command ls means 'list', and typing this will show you all the files in your home directory. If you don't see a src directory, then type the following:
mkdir src
The mkdir command means make directory, and typing the above will create a directory called 'src': now you need to change directories ( cd ) to the new directory. This is where you should put the sources if you have nowhere better to put them. If you have not yet downloaded the sources then download them to this directory, if you have already downloaded the sources then you can move the sources to this directory by using the mv command (assuming you know where the sources are)...
mv /home/username/icecast-2.3.1.tar.gz /home/username/src
In the above example I accidentally downloaded the sources to the /home/adam directory and I am moving them to my new src directory.

Extracting the downloaded files

Now we will uncompress the file we have just downloaded... to do this type (assuming you have the 2.3.1 version of Icecast, otherwise substitute the below file name for the one that you have):
tar -zxvf icecast-2.3.1.tar.gz

This will throw a whole lot of garbage into the terminal window, which is a list of all the files that have just been extracted from the archive. To learn more about the tar command use this:
man tar

Now if you type the ls -al command you will hopefully see a new directory:

so now you need to cd to the new directory (in my case the directory is named icecast-2.3.1).

cd icecast-2.3.1

Then you need to type the following:

./configure
This is the standard configure command that you will pretty much use every time you install something from source on Linux. If you are lucky you will see a whole lot of text scrolling through the terminal... this is the configure script checking that everything is ok on your computer before it allows you to install the software. If all goes well you should have a nice clean configure process with no errors.

Now type the following:

make
The make command compiles a binary from the sources, basically what this means is that the configure script has worked out how to create the software for your system, then the make command uses this information to create (compile) the software. If the make process has gone well then you will end up with a nice clean terminal once again with no errors.

icecast_term2.jpg

ok! so... if you have had problems and this is not what you see then you are going to need help... I'm sorry I can't say much here other than perhaps you need to go to your favourite search engine and start searching for answers. The best method I have found for doing this is to copy the exact error message you receive and type this into the search field of your favourite search engine and see what results you get. Chances are you will find someone else has had the same problem and has documented the solution or perhaps someone else has offered advice in a news group etc. In any case, the problems that could occur are quite broad and it's not possible to predict them all here.

If all has gone well then there is one more command to type:

make install
This command installs the compiled software in the appropriate place on your system. To check this has all gone well type the following:
icecast
This is the command that starts your newly installed Icecast2 server...