winamp/Src/Plugins/DSP/sc_serv3/readme.txt

90 lines
2.9 KiB
Text
Raw Normal View History

2024-09-24 12:54:57 +00:00
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++