System2 extends Sourcemod with a easy HTTP/FTP Request API and also provides some useful system commands, which missing in the Sourcemod API.
Binaries and more information can be found on alliedmods.net
-
Set build path
export BUILD_DIR=$HOME
cd $BUILD_DIR
-
Build openssl
wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz && tar -xvzf openssl-1.1.1k.tar.gz
cd openssl-1.1.1k
setarch i386 ./config -m32 no-shared && make
mkdir lib && cp *.a lib/
cd $BUILD_DIR
-
Build zlib
wget http://zlib.net/zlib1211.zip && unzip zlib1211.zip
cd zlib-1.2.11
CFLAGS=-m32 ./configure -static && make
mkdir include && mkdir lib && cp *.h include/ && cp libz.a lib
cd $BUILD_DIR
-
Build libidn
wget https://ftp.gnu.org/gnu/libidn/libidn2-2.2.0.tar.gz && tar -xvzf libidn2-2.2.0.tar.gz
cd libidn2-2.2.0
CFLAGS=-m32 ./configure --disable-shared --enable-static --disable-doc && make
mkdir include && cp lib/*.h include/ && cp lib/.libs/libidn2.a lib
cd $BUILD_DIR
-
Build libcurl
wget https://curl.se/download/curl-7.76.0.zip && unzip curl-7.76.0.zip
cd curl-7.76.0
./configure --with-ssl=$BUILD_DIR/openssl-1.1.1k --with-zlib=$BUILD_DIR/zlib-1.2.11 --with-libidn2=$BUILD_DIR/libidn2-2.2.0 --disable-shared --enable-static --disable-rtsp --disable-ldap --disable-ldaps --disable-manual --disable-libcurl-option --without-librtmp --without-libssh2 --without-nghttp2 --without-gssapi --host=i386-pc-linux-gnu CFLAGS=-m32 && make all ca-bundle
- DO NOT INSTALL IT!
cd $BUILD_DIR
-
Get Sourcemod 1.10
git clone https://github.com/alliedmodders/sourcemod --recursive --branch 1.10-dev --single-branch sourcemod-1.10
-
Build system2
git clone https://github.com/dordnung/System2
cd System2
make SMSDK=$BUILD_DIR/sourcemod-1.10 OPENSSL=$BUILD_DIR/openssl-1.1.1k ZLIB=$BUILD_DIR/zlib-1.2.11 IDN=$BUILD_DIR/libidn2-2.2.0 CURL=$BUILD_DIR/curl-7.76.0
-
Build zlib
- Download zlib from
https://zlib.net/zlib1211.zip
and unzip to some folder - Open the
Developer Command Prompt for VS 2019
at thezlib-1.2.11
folder - Type
vcvarsall.bat x86
and press ENTER - Type
nmake /f win32/Makefile.msc LOC=-MT
and press ENTER - Type
md lib include
and press ENTER - Type
copy /Y zlib.lib lib
and press ENTER - Type
copy /Y *h include
and press ENTER - Add a new system variable named
ZLIB
pointing to thezlib-1.2.11
folder
- Download zlib from
-
Build libcurl
- Download curl from
https://curl.se/download/curl-7.76.0.zip
and unzip to some folder - Reopen the
Developer Command Prompt for VS 2019
at thecurl-7.76.0
folder - Type
vcvarsall.bat x86
and press ENTER - Type
cd winbuild
and press ENTER - Type
nmake /f Makefile.vc mode=static WITH_ZLIB=static ZLIB_PATH=%ZLIB% RTLIBCFG=static VC=16 MACHINE=x86
and press ENTER - Add a new system variable named
CURL
pointing to thecurl-7.76.0/builds/libcurl-vc16-x86-release-static-zlib-static-ipv6-sspi-schannel
folder
- Download curl from
-
Get Sourcemod 1.10
- Retrieve Sourcemod 1.10 with:
git clone https://github.com/alliedmodders/sourcemod --recursive --branch 1.10-dev --single-branch sourcemod-1.10
- Add a new system variable named
SOURCEMOD
with the path to the sourcemod-1.10 folder
- Retrieve Sourcemod 1.10 with:
-
Build System2
- Retrieve System2 with:
git clone https://github.com/dordnung/System2
- Reopen the
Developer Command Prompt for VS 2019
at thesystem2
folder - Type
vcvarsall.bat x86
and press ENTER - Type
msbuild msvc19/system2.sln /p:Platform="win32"
and press ENTER
- Retrieve System2 with: