Make sure your system fits with the requirements.
git clone https://github.com/azerothcore/azerothcore-wotlk.git azerothcore
mkdir build; cd build
Before running the CMake command, replace
/home/youruser/azeroth-server/ with the path of the server installation (where you want to place the compiled binaries).
CMake on Linux:
cmake ../ -DCMAKE_INSTALL_PREFIX=/home/youruser/azeroth-server/ -DTOOLS=0 -DSCRIPTS=1
CMake on Mac OS X:
cmake ../ -DCMAKE_INSTALL_PREFIX=/home/youruser/azeroth-server/ -DTOOLS=0 -DSCRIPTS=1 -DMYSQL_ADD_INCLUDE_PATH=/usr/local/include -DMYSQL_LIBRARY=/usr/local/mysql/lib/libmysqlclient_r.dylib -DREADLINE_INCLUDE_DIR=/usr/local/opt/readline/include -DREADLINE_LIBRARY=/usr/local/opt/readline/lib/libreadline.dylib -DOPENSSL_INCLUDE_DIR=/usr/local/opt/openssl/include -DOPENSSL_SSL_LIBRARIES=/usr/local/opt/openssl/lib/libssl.dylib -DOPENSSL_CRYPTO_LIBRARIES=/usr/local/opt/openssl/lib/libcrypto.dylib
4 with the number of threads that you want to execute, type:
make -j 4
Open CMake , press
Browse Source... button and select the folder that you cloned earlier then press
Browse Build... and select a folder where the CMake will generate the build files. Press the
CMake will ask you to select what compiler to use. For example you'll want to select
Visual Studio 14 2015 Win64 to compile x64 binaries using Visual Studio 2015. Do not change the
Use default native compilers option. Press
Finish and wait until CMake is done checking for requires files.
CMAKE_INSTALL_PREFIX to the location where you will run your server from.
Configure once again and then press
Generate. If no error occurred you can close CMake.
Go to the location where the build files have been generated and open AzerothCore.sln
Note: If MySQL is not found by CMake it is required to set MYSQL_INCLUDE_DIR = C:/mysql_libs/include and MYSQL_LIBRARY= C:/mysql_libs/lib_XX/libmysql.lib. XX depends if you are compiling in 32 or 64 bits mode. ( See Windows Requirements article )
BUILD then select
Build solution or press F6.
Wait until the Build has been finished (It should take between 10-40 minutes depending on your hardware).
You will find your freshly compiled binaries in the Build\bin\Release or Build\bin\Debug folder. These are all used to run your server at the end of this instruction.
You will need the following files in order for the core to function properly:
libeay32.dll libmySQL.dll ssleay32.dll ace.dll worldserver.conf.dist worldserver.exe authserver.conf.dist authserver.exe
ssleay32.dll from OpenSSL install folder into
libmysql.dll from your MYSQL_LIBRARY path into
Note: Do not use ARM architecture as azerothcore requires SSE2 and ARM doesn't support it.
Inside the directory where you installed the binaries (e.g.
/home/youruser/azeroth-server/), open the directory where configuration files has been installed (
etc/ on linux ) , then:
authserver.conf.distand rename it to
authserver.conf( DO NOT REMOVE THE .dist FILE )
worldserver.conf.distand rename it to
worldserver.conf( DO NOT REMOVE THE .dist FILE )
Please Read How to edit .conf files article to understand how configuration files work, and why you need the .dist file too
worldserver.conf files and go to the
MYSQL SETTINGS section, then set the variables:
LoginDatabaseInfo = "127.0.0.1;3306;root;your_password;auth"
WorldDatabaseInfo = "127.0.0.1;3306;root;your_password;world"
CharacterDatabaseInfo = "127.0.0.1;3306;root;your_password;characters"
your_password with the password of your MySQL server root user
authserver.conf has the
LoginDatabaseInfo variable only).
In the worldserver.conf file, also set:
DataDir = "/home/youruser/azeroth-server/data"
/home/youruser/azeroth-server with the path where you installed the binaries.
Go to the directory of your azeroth server (e.g.
/home/youruser/azeroth-server) and create a new directory named
Download this archive. It contains several archives, extract all of them placing the extracted
vmaps directories inside the data directory.
We will assume that you already know how to perform the basic tasks like creating a new database, selecting a database and importing a SQL dump file. If you don't, don't worry: it's very easy and you will find a lot of guides on Google, whatever MySQL client tool you're using.
Create three empty databases:
if, for some reasons, you decide to name them differently, remember to edit your
it will generate the databases under the
/bin/db_assembler/output directory of your azerothcore sources directory.
Using your MySQL client tool, import all generated mysql files in this order:
base -> updates -> custom ( if any )
Open 2 terminal windows (or terminal tabs) and move to the
bin directory of your azeroth server (for example
then in one window/tab type:
in the other one: