Linux Requirements
Installation Guide | |
---|---|
This article is a part of the Installation Guide. You can read it alone or click on the previous link to easily move between the steps. | |
MySQL ≥ 5.7.0 | |
Boost ≥ 1.74 | |
OpenSSL ≥ 3.0.x | |
CMake ≥ 3.16 | |
Clang ≥ 10 |
Ubuntu with MySQL 8.x
sudo apt-get update && sudo apt-get install git cmake make gcc g++ clang libmysqlclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev mysql-server libboost-all-dev
Ubuntu with MariaDB 10.x
AzerothCore does only support MariaDB versions 10.6 and 10.5.
{% include note.html content=“Some users experience issues when starting the servers while having MariaDB and MySQL installed at the same time. If you experience this issue try to uninstall MySQL or join the Discord to ask for help.” %}
sudo apt update && sudo apt full-upgrade -y && sudo apt install git cmake make gcc g++ clang libssl-dev libbz2-dev libreadline-dev libncurses-dev libboost-all-dev mariadb-server mariadb-client libmariadb-dev libmariadb-dev-compat
Remember that if you are using the root
user, it is not necessary to use sudo
.
Note: If you get the error cannot find -lstdc++ you need to install g++-12
and it's dependencies.
To configure MySQL in Ubuntu 18.04 and similar (set root
password and other settings) read this guide.
Note: in older versions of Ubuntu like 18.04 you need to install gcc-10
and libboost1.74-dev
:
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test sudo add-apt-repository -y ppa:mhier/libboost-latest sudo apt-get update sudo apt install -y gcc-10 g++-10 sudo apt install -y install libboost1.74-dev
Debian 10 / Debian 12
{% include note.html content=“Some users experience issues when starting the servers while having MariaDB and MySQL installed at the same time. If you experience this issue try to uninstall MySQL or join the Discord to ask for help.” %}
sudo apt-get update && sudo apt-get install git cmake make gcc g++ clang default-libmysqlclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev mariadb-server libboost-all-dev
Remember that if you are using the root
user, it is not necessary to use sudo
.
Note: If you add the option -y
and at the end of the list, it will start installing them without the need for you to confirm.
Example:
apt-get update && apt-get install git cmake make gcc g++ clang default-libmysqlclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev mariadb-server libboost-all-dev -y
Check your clang version
clang --version
Your clang
version MUST be 10
or higher (here you can check the versions that run in our Github Actions pipeline, we recommend to use one of those versions).
For example, if you are using an older version of Ubuntu like 18.04, you need to install clang using:
sudo apt-get install clang-10.0
If you use another distro or version, search on google for how to install the right clang version for your system.
Currently the project requires clang10 or higher.
This is a way to upgrade and install version 11.
The answer is detailed here:
Check your cmake version
cmake --version
Your cmake
version MUST be 3.16
or higher.
On an older version of Ubuntu (example: 16.04), you can follow the instructions here in order to install the latest cmake version. On debian you would need to use the backports sources or build Cmake manually.
Remember that it is possible to update cmake, using Python.
Install:
python -m pip install cmake
Update:
python -m pip install --upgrade cmake
Ensure that the gcc-8 headers are installed
This is an issue if for example using an older version of Ubuntu like 16.04. There you have to add the PPA “Toolchain test builds”: https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
After
sudo apt-get update
you can install gcc-8:
sudo apt-get install g++-8 gcc-8