Skip to content

Latest commit

 

History

History
68 lines (56 loc) · 2.02 KB

building.md

File metadata and controls

68 lines (56 loc) · 2.02 KB

Build environment and supported platforms

  • gcc (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0 (with Speex)
  • gcc (Debian 10.2.1-6) 10.2.1
  • gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0

Note

This list is not exhaustive and newer versions might work as well.

Requirements / Dependencies

  • gcc and g++ (with multilib on 64-bit x86 operating systems)
  • libstdc++5
  • MySQL client (optional, see nomysql below)
  • Speex 1.1.9 (optional, see nospeex below)

Base requirements installation (for 64-bit Ubuntu 22.04 LTS)

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install gcc-multilib g++-multilib libstdc++5:i386

MySQL requirements installation (for 64-bit Ubuntu 22.04 LTS)

sudo apt install libmysqlclient-dev:i386

MySQL requirements installation (for 64-bit Debian 11.6)

sudo apt install libmariadb-dev-compat:i386

Sound alias duration support requirements installation

sudo apt install ffmpeg

Note

If not installed, getSoundDuration(<aliasname>) always returns undefined.

Custom sound file docs (for 64-bit Ubuntu 22.04 LTS)

Important

Note: This feature is enabled by default and increases RAM usage by about 500 MB. See below for how to disable it (nospeex).

Building the binary

# Move into  the code directory
cd code

# Default interactive build
./doit.sh

# Alternative: Without Speex
./doit.sh nospeex

# Alternative: Without MySQL and Speex
./doit.sh nomysql nospeex

# Alternative: Debug build with Speex
./doit.sh debug

On success, this creates libcod2.so in ./code/bin.

Running your server with libcod