Vladislav 7003cbe191 first commit 2 months ago
..
GeoIP 7003cbe191 first commit 2 months ago
aolxml 7003cbe191 first commit 2 months ago
deps 7003cbe191 first commit 2 months ago
libs 7003cbe191 first commit 2 months ago
nmrCommon 7003cbe191 first commit 2 months ago
webNet 7003cbe191 first commit 2 months ago
ADTSHeader.cpp 7003cbe191 first commit 2 months ago
ADTSHeader.h 7003cbe191 first commit 2 months ago
FLV.cpp 7003cbe191 first commit 2 months ago
FLV.h 7003cbe191 first commit 2 months ago
GNUmakefile 7003cbe191 first commit 2 months ago
ID3miniParsers.cpp 7003cbe191 first commit 2 months ago
ID3miniParsers.h 7003cbe191 first commit 2 months ago
MP3Header.cpp 7003cbe191 first commit 2 months ago
MP3Header.h 7003cbe191 first commit 2 months ago
MSG00001.bin 7003cbe191 first commit 2 months ago
adminList.cpp 7003cbe191 first commit 2 months ago
adminList.h 7003cbe191 first commit 2 months ago
agentList.cpp 7003cbe191 first commit 2 months ago
agentList.h 7003cbe191 first commit 2 months ago
amf.cpp 7003cbe191 first commit 2 months ago
amf.h 7003cbe191 first commit 2 months ago
auth.cpp 7003cbe191 first commit 2 months ago
auth.h 7003cbe191 first commit 2 months ago
banList.cpp 7003cbe191 first commit 2 months ago
banList.h 7003cbe191 first commit 2 months ago
bandwidth.cpp 7003cbe191 first commit 2 months ago
bandwidth.h 7003cbe191 first commit 2 months ago
base64.cpp 7003cbe191 first commit 2 months ago
base64.h 7003cbe191 first commit 2 months ago
cache.cpp 7003cbe191 first commit 2 months ago
cache.h 7003cbe191 first commit 2 months ago
config.cpp 7003cbe191 first commit 2 months ago
config.h 7003cbe191 first commit 2 months ago
cpucount.cpp 7003cbe191 first commit 2 months ago
cpucount.h 7003cbe191 first commit 2 months ago
filenameMetadata.cpp 7003cbe191 first commit 2 months ago
filenameMetadata.h 7003cbe191 first commit 2 months ago
global.cpp 7003cbe191 first commit 2 months ago
global.h 7003cbe191 first commit 2 months ago
icy.ico 7003cbe191 first commit 2 months ago
libcurl_building.txt 7003cbe191 first commit 2 months ago
main.cpp 7003cbe191 first commit 2 months ago
manifest.xml 7003cbe191 first commit 2 months ago
manifest64.xml 7003cbe191 first commit 2 months ago
messagefile.h 7003cbe191 first commit 2 months ago
messagefile.mc 7003cbe191 first commit 2 months ago
metadata.cpp 7003cbe191 first commit 2 months ago
metadata.h 7003cbe191 first commit 2 months ago
metrics.cpp 7003cbe191 first commit 2 months ago
metrics.h 7003cbe191 first commit 2 months ago
protocol_FlashPolicyServer.cpp 7003cbe191 first commit 2 months ago
protocol_FlashPolicyServer.h 7003cbe191 first commit 2 months ago
protocol_HTTPClient.cpp 7003cbe191 first commit 2 months ago
protocol_HTTPClient.h 7003cbe191 first commit 2 months ago
protocol_HTTPSource.cpp 7003cbe191 first commit 2 months ago
protocol_HTTPSource.h 7003cbe191 first commit 2 months ago
protocol_HTTPStyle.cpp 7003cbe191 first commit 2 months ago
protocol_HTTPStyle.h 7003cbe191 first commit 2 months ago
protocol_RTMPClient.cpp 7003cbe191 first commit 2 months ago
protocol_RTMPClient.h 7003cbe191 first commit 2 months ago
protocol_admincgi.cpp 7003cbe191 first commit 2 months ago
protocol_admincgi.h 7003cbe191 first commit 2 months ago
protocol_backup.cpp 7003cbe191 first commit 2 months ago
protocol_backup.h 7003cbe191 first commit 2 months ago
protocol_flvClient.cpp 7003cbe191 first commit 2 months ago
protocol_flvClient.h 7003cbe191 first commit 2 months ago
protocol_m4aClient.cpp 7003cbe191 first commit 2 months ago
protocol_m4aClient.h 7003cbe191 first commit 2 months ago
protocol_relay.cpp 7003cbe191 first commit 2 months ago
protocol_relay.h 7003cbe191 first commit 2 months ago
protocol_relay_shoutcast.cpp 7003cbe191 first commit 2 months ago
protocol_relay_shoutcast.h 7003cbe191 first commit 2 months ago
protocol_relay_uvox.cpp 7003cbe191 first commit 2 months ago
protocol_relay_uvox.h 7003cbe191 first commit 2 months ago
protocol_shoutcast1Client.cpp 7003cbe191 first commit 2 months ago
protocol_shoutcast1Client.h 7003cbe191 first commit 2 months ago
protocol_shoutcast2Client.cpp 7003cbe191 first commit 2 months ago
protocol_shoutcast2Client.h 7003cbe191 first commit 2 months ago
protocol_shoutcastClient.cpp 7003cbe191 first commit 2 months ago
protocol_shoutcastClient.h 7003cbe191 first commit 2 months ago
protocol_shoutcastSource.cpp 7003cbe191 first commit 2 months ago
protocol_shoutcastSource.h 7003cbe191 first commit 2 months ago
protocol_uvox2Source.cpp 7003cbe191 first commit 2 months ago
protocol_uvox2Source.h 7003cbe191 first commit 2 months ago
readme.txt 7003cbe191 first commit 2 months ago
resource.h 7003cbe191 first commit 2 months ago
ripList.cpp 7003cbe191 first commit 2 months ago
ripList.h 7003cbe191 first commit 2 months ago
sc_serv.rc 7003cbe191 first commit 2 months ago
sc_serv.vcxproj 7003cbe191 first commit 2 months ago
sc_serv.vcxproj.filters 7003cbe191 first commit 2 months ago
stats.cpp 7003cbe191 first commit 2 months ago
stats.h 7003cbe191 first commit 2 months ago
streamData.cpp 7003cbe191 first commit 2 months ago
streamData.h 7003cbe191 first commit 2 months ago
threadedRunner.cpp 7003cbe191 first commit 2 months ago
threadedRunner.h 7003cbe191 first commit 2 months ago
updater.cpp 7003cbe191 first commit 2 months ago
updater.h 7003cbe191 first commit 2 months ago
uvox2Common.cpp 7003cbe191 first commit 2 months ago
uvox2Common.h 7003cbe191 first commit 2 months ago
versions.h 7003cbe191 first commit 2 months ago
w3cLog.cpp 7003cbe191 first commit 2 months ago
w3cLog.h 7003cbe191 first commit 2 months ago
webClient.cpp 7003cbe191 first commit 2 months ago
webClient.h 7003cbe191 first commit 2 months ago
yp2.cpp 7003cbe191 first commit 2 months ago
yp2.h 7003cbe191 first commit 2 months ago

readme.txt

Building sc_serv2
-----------------

The build dependencies for sc_serv2 are expat and zlib and these already have a pre-built
library stored in the 'libs' folder. Otherwise everything else is built from the contents
of the sc_serv3 folder so the libs only need to be updated rarely.

It is assumed in all cases that there is a valid gcc + g++ tool chain in place along with
all standard libraries for building tools on the platform being used.


Win32 / Win64
-------------

The MSVC 2008 project builds straight from here with it using the pre-built libraries.

As from DNAS v2.6, additional libcurl, libssl & libcrypto .lib files are required.
External zip files can be downloaded from the Nullsoft github repo:
https://github.com/Radionomy/Nullsoft/blob/master/Shoutcast/sc_serv3/deps/win32.7z
https://github.com/Radionomy/Nullsoft/blob/master/Shoutcast/sc_serv3/deps/win64.7z

Extract locally to Shoutcast\sc_serv3\deps


BSD / Mac OS X / Linux
----------------------

The following is only needed if there is an update of the dependency library current
setup requires building expat before you can build sc_serv2 itself (not ideal but as it
is usually a build once event on the dependencies then it isn't too much of an issue...).

EXPAT
-----

In most cases just running ./unix_build_expat in the aolxml folder will build it.


ZLIB
----

./configure --static && make

May also need to set (or applicable):

export CC="/usr/bin/gcc44"

in order to get it using the desired version of GCC on the system used to build this.


-----------

Once all of the dependencies have been built then you just need to do "(g)make release"
to get a build. The make stage accepts the following modes:

clean
release
fire
debug


Building on Centos 7 (on x64)
-----------------------------
Packages to install to enable compilation
sudo yum install gcc-c++
sudo yum install openssl-devel
sudo yum install libstdc++-static

curl http://mirror.centos.org/centos/8/BaseOS/x86_64/os/Packages/libcurl-devel-7.61.1-22.el8.x86_64.rpm > libcurl-devel.rpm
sudo rpm install libcur-devel.rpm

If the directory deps/x86_64/lib does not exists create it
mkdir -p deps/x86_64/lib
Copy the static dependencies to this directory
cp libs/Aol_XML/Linux_x86_64/libexpat.a deps/x86_64/lib/
cp libs/zlib/Linux_x86_64/libz.a deps/x86_64/lib/

Notes
-----

Building assumes that both the C and C++ compilers are correctly setup on the machine.
When doing the linux build on ubuntu 10.10 the g++ compiler was not available leading to
"error trying to exec 'cc1plus' execvp" errors during building. The fix is:

sudo apt-get install g++

When doing the linux build on Centos 5.5 the g++ compiler was not available leading to
"gcc: error trying to exec 'cc1plus': execvp: No such file or directory". The fix is:

yum install gcc-c++