Compile icecast in the Unix-Like Environment: Difference between revisions
		
		
		
		Jump to navigation
		Jump to search
		
No edit summary  | 
				m Reverted edit of 192.44.60.146, changed back to last version by AndCycle  | 
				||
| (8 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
這兒是說明如何在 *nix 下編譯 icecast 的麻瓜用 shellscript ,文件及 [[Shellscript]] 的編寫者為 [[User:AndCycle|AndCycle]] 。  | |||
(註:整組編譯完的空間約需200MB e_e )  | |||
<pre   | ----  | ||
==Contents of Shellscript==  | |||
<pre><nowiki>  | |||
#!/bin/bash  | #!/bin/bash  | ||
| Line 28: | Line 32: | ||
}  | }  | ||
gragAndUntar "http://curl.haxx.se/download/curl-7.14.  | gragAndUntar "http://curl.haxx.se/download/curl-7.14.1.tar.gz" "curl-7.14.1.tar.gz"  | ||
gragAndUntar "ftp://xmlsoft.org/libxml2-2.6.  | gragAndUntar "ftp://xmlsoft.org/libxml2-2.6.22.tar.gz" "libxml2-2.6.22.tar.gz"  | ||
gragAndUntar "ftp://xmlsoft.org/libxslt-1.1.  | gragAndUntar "ftp://xmlsoft.org/libxslt-1.1.15.tar.gz" "libxslt-1.1.15.tar.gz"  | ||
gragAndUntar "http://www.libsdl.org/release/SDL-1.2.  | gragAndUntar "http://www.libsdl.org/release/SDL-1.2.9.tar.gz" "SDL-1.2.9.tar.gz"  | ||
gragAndUntar "http://downloads.xiph.org/releases/ogg/libogg-1.1.2.tar.gz" "libogg-1.1.2.tar.gz"  | gragAndUntar "http://downloads.xiph.org/releases/ogg/libogg-1.1.2.tar.gz" "libogg-1.1.2.tar.gz"  | ||
gragAndUntar "http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.  | gragAndUntar "http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.1.tar.gz" "libvorbis-1.1.1.tar.gz"  | ||
gragAndUntar "http://downloads.xiph.org/releases/theora/libtheora-1.  | gragAndUntar "http://downloads.xiph.org/releases/theora/libtheora-1.0alpha5.tar.gz" "libtheora-1.0alpha5.tar.gz"  | ||
gragAndUntar "http://downloads.xiph.org/releases/icecast/icecast-2.  | gragAndUntar "http://downloads.xiph.org/releases/icecast/icecast-2.3.1.tar.gz" "icecast-2.3.1.tar.gz"  | ||
gragAndUntar "http://www.oberhumer.com/opensource/ucl/download/ucl-1.03.tar.gz" "ucl-1.03.tar.gz"  | gragAndUntar "http://www.oberhumer.com/opensource/ucl/download/ucl-1.03.tar.gz" "ucl-1.03.tar.gz"  | ||
gragAndUntar "http://upx.sourceforge.net/download/upx-1.25-src.tar.gz" "upx-1.25-src.tar.gz"  | gragAndUntar "http://upx.sourceforge.net/download/upx-1.25-src.tar.gz" "upx-1.25-src.tar.gz"  | ||
| Line 72: | Line 76: | ||
}  | }  | ||
makeInstall "curl-7.14.  | makeInstall "curl-7.14.1" "--prefix=$installPath"  | ||
makeInstall "libxml2-2.6.  | makeInstall "libxml2-2.6.22" "--prefix=$installPath"  | ||
makeInstall "libxslt-1.1.  | makeInstall "libxslt-1.1.15" "--prefix=$installPath --with-libxml-prefix=$installPath"  | ||
makeInstall "SDL-1.2.  | makeInstall "SDL-1.2.9" "--prefix=$installPath"  | ||
makeInstall "libogg-1.1.2" "--prefix=$installPath"  | makeInstall "libogg-1.1.2" "--prefix=$installPath"  | ||
makeInstall "libvorbis-1.1.  | makeInstall "libvorbis-1.1.1" "--prefix=$installPath --with-ogg=$installPath --disable-oggtest"  | ||
makeInstall "libtheora-1.  | makeInstall "libtheora-1.0alpha5" "--prefix=$installPath --with-ogg=$installPath --with-vorbis=$installPath --with-sdl-prefix=$installPath --disable-oggtest --disable-vorbistest --disable-sdltest"  | ||
#icecast need blablabla-config executable  | #icecast need blablabla-config executable  | ||
cd libxslt-1.1.  | cd libxslt-1.1.15  | ||
chmod +x xslt-config  | chmod +x xslt-config  | ||
cd $testCompilePath  | cd $testCompilePath  | ||
cd curl-7.14.  | cd curl-7.14.1  | ||
chmod +x curl-config  | chmod +x curl-config  | ||
cd $testCompilePath  | cd $testCompilePath  | ||
makeInstall "icecast-2.  | makeInstall "icecast-2.3.1" "--prefix=$installPath --with-xslt-config=$testCompilePath/libxslt-1.1.15/xslt-config --with-curl-config=$testCompilePath/curl-7.14.1/curl-config --with-vorbis=$installPath --with-theora=$installPath" "static"  | ||
cp $installPath/bin/icecast $testCompilePath  | cp $installPath/bin/icecast $testCompilePath  | ||
| Line 111: | Line 115: | ||
</nowiki></pre>  | </nowiki></pre>  | ||
{{Menu:Category|Radio|Computer|AndCycle}}  | |||
Latest revision as of 04:00, 28 February 2006
這兒是說明如何在 *nix 下編譯 icecast 的麻瓜用 shellscript ,文件及 Shellscript 的編寫者為 AndCycle 。
(註:整組編譯完的空間約需200MB e_e )
Contents of Shellscript
#!/bin/bash
mkdir testCompile
cd testCompile
testCompilePath=`pwd`
mkdir install
cd install
installPath=`pwd`
cd $testCompilePath
gragAndUntar ()
{
	echo "grab $1"
	if wget $1
	then echo "Done"
	else exit 1
	fi
	echo "untar $1"
	if tar --extract --ungzip --file $2
	then echo "Done"
	else exit 1
	fi
}
gragAndUntar "http://curl.haxx.se/download/curl-7.14.1.tar.gz" "curl-7.14.1.tar.gz"
gragAndUntar "ftp://xmlsoft.org/libxml2-2.6.22.tar.gz" "libxml2-2.6.22.tar.gz"
gragAndUntar "ftp://xmlsoft.org/libxslt-1.1.15.tar.gz" "libxslt-1.1.15.tar.gz"
gragAndUntar "http://www.libsdl.org/release/SDL-1.2.9.tar.gz" "SDL-1.2.9.tar.gz"
gragAndUntar "http://downloads.xiph.org/releases/ogg/libogg-1.1.2.tar.gz" "libogg-1.1.2.tar.gz"
gragAndUntar "http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.1.tar.gz" "libvorbis-1.1.1.tar.gz"
gragAndUntar "http://downloads.xiph.org/releases/theora/libtheora-1.0alpha5.tar.gz" "libtheora-1.0alpha5.tar.gz"
gragAndUntar "http://downloads.xiph.org/releases/icecast/icecast-2.3.1.tar.gz" "icecast-2.3.1.tar.gz"
gragAndUntar "http://www.oberhumer.com/opensource/ucl/download/ucl-1.03.tar.gz" "ucl-1.03.tar.gz"
gragAndUntar "http://upx.sourceforge.net/download/upx-1.25-src.tar.gz" "upx-1.25-src.tar.gz"
makeInstall ()
{
	echo "working in $1"
	if cd $1
	then echo "Done"
	else exit 1
	fi
	echo "configure $1"
	if ./configure $2
	then echo "Done"
	else exit 1
	fi
	echo "make $1"
	if [ "$3" ]
	then
		if make $3
		then echo "Done"
		else exit 1
		fi
	else
		if make
		then echo "Done"
		else exit 1
		fi
	fi
	echo "make installe $1"
	if make install
	then echo "Done"
	else exit 1
	fi
	cd $testCompilePath
}
makeInstall "curl-7.14.1" "--prefix=$installPath"
makeInstall "libxml2-2.6.22" "--prefix=$installPath"
makeInstall "libxslt-1.1.15" "--prefix=$installPath --with-libxml-prefix=$installPath"
makeInstall "SDL-1.2.9" "--prefix=$installPath"
makeInstall "libogg-1.1.2" "--prefix=$installPath"
makeInstall "libvorbis-1.1.1" "--prefix=$installPath --with-ogg=$installPath --disable-oggtest"
makeInstall "libtheora-1.0alpha5" "--prefix=$installPath --with-ogg=$installPath --with-vorbis=$installPath --with-sdl-prefix=$installPath --disable-oggtest --disable-vorbistest --disable-sdltest"
#icecast need blablabla-config executable
cd libxslt-1.1.15
chmod +x xslt-config
cd $testCompilePath
cd curl-7.14.1
chmod +x curl-config
cd $testCompilePath
makeInstall "icecast-2.3.1" "--prefix=$installPath --with-xslt-config=$testCompilePath/libxslt-1.1.15/xslt-config --with-curl-config=$testCompilePath/curl-7.14.1/curl-config --with-vorbis=$installPath --with-theora=$installPath" "static"
cp $installPath/bin/icecast $testCompilePath
makeInstall "ucl-1.03" "--prefix=$installPath"
cd ucl-1.03
export UCLDIR=`pwd`
cd $testCompilePath
cd upx-1.25
cd src
make
chmod 755 upx
./upx -9 $testCompilePath/icecast
cd $testCompilePath
mkdir build
cd build
cp --recursive $installPath/share/icecast/* ./
mv $testCompilePath/icecast ./
echo "we have done all the need in testCompile/build directory."