Manuais/Icecast

Da Hacklaviva

Índice

Icecast

wikipedia: Icecast

website: icecast.org

RadioLivre old icecast tutorial in portuguese (Web Archive)

GNUWare - Icecast Installation and Management (Web Archive)

installation tutorial

Linux

Download Source

Download source RPM or tar.gz in the official site [1] or the latest version when writing this tutorial here (icecast 2.3.2) and unarchive it.

Prerequisites

icecast requires the following packages: [2]

NOTE: icecast may be compiled without curl, however this will disable all Directory server interaction (YP).
REMEMBER: you should install the development packages - you find more 
information about the installation of need packages
in Manuais/Icecast#Common_errors section

Installation

run the following lines in the command line as root:

./configure
make
make install

if it doesn't go smoothly, jump to Manuais/Icecast#Common_errors section, if everything goes ok, your make install output should be something similar to this:


Making install in src
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src'
Making install in avl
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/avl'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/avl'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/avl'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/avl'
Making install in thread
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/thread'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/thread'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/thread'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/thread'
Making install in httpp
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/httpp'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/httpp'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/httpp'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/httpp'
Making install in net
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/net'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/net'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/net'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/net'
Making install in log
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/log'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/log'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/log'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/log'
Making install in timing
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/timing'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src/timing'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/timing'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src/timing'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/src'
test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin"
 /bin/bash ../libtool --mode=install /usr/bin/install -c 'icecast' '/usr/local/bin/icecast'
/usr/bin/install -c icecast /usr/local/bin/icecast
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/src'
Making install in conf
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/conf'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/conf'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/share/icecast/doc" || /bin/mkdir -p "/usr/local/share/icecast/doc"
 /usr/bin/install -c -m 644 'icecast.xml.dist' '/usr/local/share/icecast/doc/icecast.xml.dist'
 /usr/bin/install -c -m 644 'icecast_minimal.xml.dist' '/usr/local/share/icecast/doc/icecast_minimal.xml.dist'
 /usr/bin/install -c -m 644 'icecast_shoutcast_compat.xml.dist' '/usr/local/share/icecast/doc/icecast_shoutcast_compat.xml.dist'
 /usr/bin/install -c -m 644 'icecast_urlauth.xml.dist' '/usr/local/share/icecast/doc/icecast_urlauth.xml.dist'
make  install-data-hook
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/conf'
/bin/bash ../mkinstalldirs /usr/local/etc
test -f /usr/local/etc/icecast.xml || \
	/usr/bin/install -c -m 644 icecast.xml.dist /usr/local/etc/icecast.xml
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/conf'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/conf'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/conf'
Making install in debian
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/debian'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/debian'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/debian'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/debian'
Making install in doc
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/doc'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/doc'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/share/doc/icecast" || /bin/mkdir -p "/usr/local/share/doc/icecast"
 /usr/bin/install -c -m 644 'index.html' '/usr/local/share/doc/icecast/index.html'
 /usr/bin/install -c -m 644 'icecast2_admin.html' '/usr/local/share/doc/icecast/icecast2_admin.html'
 /usr/bin/install -c -m 644 'icecast2_basicsetup.html' '/usr/local/share/doc/icecast/icecast2_basicsetup.html'
 /usr/bin/install -c -m 644 'icecast2_config_file.html' '/usr/local/share/doc/icecast/icecast2_config_file.html'
 /usr/bin/install -c -m 644 'icecast2_faq.html' '/usr/local/share/doc/icecast/icecast2_faq.html'
 /usr/bin/install -c -m 644 'icecast2_glossary.html' '/usr/local/share/doc/icecast/icecast2_glossary.html'
 /usr/bin/install -c -m 644 'icecast2_introduction.html' '/usr/local/share/doc/icecast/icecast2_introduction.html'
 /usr/bin/install -c -m 644 'icecast2_relay.html' '/usr/local/share/doc/icecast/icecast2_relay.html'
 /usr/bin/install -c -m 644 'icecast2_stats.html' '/usr/local/share/doc/icecast/icecast2_stats.html'
 /usr/bin/install -c -m 644 'icecast2_win32.html' '/usr/local/share/doc/icecast/icecast2_win32.html'
 /usr/bin/install -c -m 644 'icecast2_yp.html' '/usr/local/share/doc/icecast/icecast2_yp.html'
 /usr/bin/install -c -m 644 'icecast2_listenerauth.html' '/usr/local/share/doc/icecast/icecast2_listenerauth.html'
 /usr/bin/install -c -m 644 'icecast2_changes.html' '/usr/local/share/doc/icecast/icecast2_changes.html'
 /usr/bin/install -c -m 644 'listener_auth1.jpg' '/usr/local/share/doc/icecast/listener_auth1.jpg'
 /usr/bin/install -c -m 644 'listener_auth2.jpg' '/usr/local/share/doc/icecast/listener_auth2.jpg'
 /usr/bin/install -c -m 644 'listener_auth3.jpg' '/usr/local/share/doc/icecast/listener_auth3.jpg'
 /usr/bin/install -c -m 644 'masterslave.png' '/usr/local/share/doc/icecast/masterslave.png'
 /usr/bin/install -c -m 644 'relay.png' '/usr/local/share/doc/icecast/relay.png'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/doc'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/doc'
Making install in web
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/web'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/web'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/share/icecast/web" || /bin/mkdir -p "/usr/local/share/icecast/web"
 /usr/bin/install -c -m 644 'status.xsl' '/usr/local/share/icecast/web/status.xsl'
 /usr/bin/install -c -m 644 'status2.xsl' '/usr/local/share/icecast/web/status2.xsl'
 /usr/bin/install -c -m 644 'corner_bottomleft.jpg' '/usr/local/share/icecast/web/corner_bottomleft.jpg'
 /usr/bin/install -c -m 644 'corner_bottomright.jpg' '/usr/local/share/icecast/web/corner_bottomright.jpg'
 /usr/bin/install -c -m 644 'corner_topleft.jpg' '/usr/local/share/icecast/web/corner_topleft.jpg'
 /usr/bin/install -c -m 644 'corner_topright.jpg' '/usr/local/share/icecast/web/corner_topright.jpg'
 /usr/bin/install -c -m 644 'icecast.png' '/usr/local/share/icecast/web/icecast.png'
 /usr/bin/install -c -m 644 'key.gif' '/usr/local/share/icecast/web/key.gif'
 /usr/bin/install -c -m 644 'style.css' '/usr/local/share/icecast/web/style.css'
 /usr/bin/install -c -m 644 'auth.xsl' '/usr/local/share/icecast/web/auth.xsl'
 /usr/bin/install -c -m 644 'server_version.xsl' '/usr/local/share/icecast/web/server_version.xsl'
 /usr/bin/install -c -m 644 'tunein.png' '/usr/local/share/icecast/web/tunein.png'
 /usr/bin/install -c -m 644 'key.png' '/usr/local/share/icecast/web/key.png'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/web'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/web'
Making install in admin
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/admin'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/admin'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/share/icecast/admin" || /bin/mkdir -p "/usr/local/share/icecast/admin"
 /usr/bin/install -c -m 644 'listclients.xsl' '/usr/local/share/icecast/admin/listclients.xsl'
 /usr/bin/install -c -m 644 'listmounts.xsl' '/usr/local/share/icecast/admin/listmounts.xsl'
 /usr/bin/install -c -m 644 'moveclients.xsl' '/usr/local/share/icecast/admin/moveclients.xsl'
 /usr/bin/install -c -m 644 'response.xsl' '/usr/local/share/icecast/admin/response.xsl'
 /usr/bin/install -c -m 644 'stats.xsl' '/usr/local/share/icecast/admin/stats.xsl'
 /usr/bin/install -c -m 644 'manageauth.xsl' '/usr/local/share/icecast/admin/manageauth.xsl'
 /usr/bin/install -c -m 644 'updatemetadata.xsl' '/usr/local/share/icecast/admin/updatemetadata.xsl'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/admin'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/admin'
Making install in win32
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/win32'
Making install in res
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/win32/res'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/win32/res'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/win32/res'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/win32/res'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/win32'
make[3]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/win32'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/win32'
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/win32'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/win32'
Making install in examples
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/examples'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2/examples'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/examples'
make[1]: Leaving directory `/home/taborda/Desktop/icecast-2.3.2/examples'
make[1]: Entering directory `/home/taborda/Desktop/icecast-2.3.2'
make[2]: Entering directory `/home/taborda/Desktop/icecast-2.3.2'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/share/doc/icecast" || /bin/mkdir -p "/usr/local/share/doc/icecast"
 /usr/bin/install -c -m 644 'README' '/usr/local/share/doc/icecast/README'
 /usr/bin/install -c -m 644 'AUTHORS' '/usr/local/share/doc/icecast/AUTHORS'
 /usr/bin/install -c -m 644 'COPYING' '/usr/local/share/doc/icecast/COPYING'
 /usr/bin/install -c -m 644 'NEWS' '/usr/local/share/doc/icecast/NEWS'
 /usr/bin/install -c -m 644 'TODO' '/usr/local/share/doc/icecast/TODO'
 /usr/bin/install -c -m 644 'ChangeLog' '/usr/local/share/doc/icecast/ChangeLog'

Common errors

configure: error: XSLT configuration could not be found

as said in the official forum, [3][4] the most common error is this one and it means you're missing the development package for libxslt. Possible package names are libxslt-devel or libxslt-dev, and you need to install it. (looks like [5] on ubuntu the packages are named libxslt1-dev libxml2-dev)

sudo apt-get install libxslt1-dev libxml2-dev
configure: error: must have Ogg Vorbis v1.0 or above installed

development packages for libogg and libvorbis are missing [6] or, outdated [7] (in this case you have to uninstall old versions first). Possible package names are libogg-devel libvorbis-devel (on ubuntu the packages are named libogg-dev libvorbis-dev)

sudo apt-get install libogg-dev libvorbis-dev

Configuration

After instalation, you can find a sample configuration file on /usr/local/etc/icecast.xml

For sample setup read [Basic Setup] (on doc/icecast2_basicsetup.html)

For deeper knowledge on the configuration file, read [Config File] (doc/icecast2_config_file.html)

Hackmeeting