https://wiki.projectskyfire.org/api.php?action=feedcontributions&user=200.126.131.90&feedformat=atomProject Skyfire - User contributions [en]2024-03-29T11:22:12ZUser contributionsMediaWiki 1.39.1https://wiki.projectskyfire.org/index.php?title=Installation_(Ubuntu_16.04LTS)&diff=735Installation (Ubuntu 16.04LTS)2019-10-23T04:31:43Z<p>200.126.131.90: </p>
<hr />
<div>== Introduction ==<br />
<br />
This is a basic guide on how to install SkyFire548 and SFDB from scratch. **Please note this is a work in progress and only contains enough information to get most people a viable server in Linux.<br />
<br />
== Prerequisites ==<br />
<br />
The compilation of SkyFire548 and the setup of SFDB will require certain packages to be installed. In Ubuntu use the following command:<br />
<br />
Debian based distributions use these commands:<br />
<pre><br />
apt-get install build-essential autoconf libtool gcc g++ make cmake subversion git patch wget links zip unzip openssl libssl-dev libreadline-gplv2-dev zlib1g-dev libbz2-dev git-core libace-dev libncurses5-dev -y<br />
</pre><br />
<br />
You may also want to install phpmyadmin and/or Apache. Do not forget the user and password for the Mysql root user.<br />
<br />
'''Installing OpenSSL''' - You should check if "1.1.0G" or newer is the latest version installed.<br />
<br />
For cases where you want to run an even newer release of OpenSSL than mentioned here, or your distribution not supplying a version that isn't of recent date, please check your distributions repositories or documentation. You can also retrieve it as sourcecode at http://openssl.org/source (feel free to use newer packages if you really feel like it). To build it from sourcecode, here's a primer : <br />
<br />
<pre><br />
wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz<br />
tar -xvf openssl-1.1.1c.tar.gz<br />
cd openssl-1.1.1c.tar.gz<br />
mkdir build<br />
cd build<br />
</pre><br />
<br />
Alternative 1 : Local installation <br />
<br />
<pre><br />
../config --prefix=/home/`echo $USER`/.sys shared<br />
make<br />
make install<br />
</pre><br />
<br />
Alternative 2 : Systemwide installation <br />
<br />
<pre><br />
../config shared<br />
make<br />
sudo make install<br />
</pre><br />
<br />
'''Installing ACE''' - You should check if "6.3.3" or newer is the latest version installed.<br />
<br />
For cases where you want to run an even newer release of ACE than mentioned here, or your distribution not supplying a version that isn't of recent date, please check your distributions repositories or documentation. You can also retrieve it as sourcecode at http://download.dre.vanderbilt.edu (feel free to use newer packages if you really feel like it). To build it from sourcecode,<br />
start by downloading and unzipping the source:<br />
<br />
<pre><br />
wget http://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-6_5_6/ACE-6.5.6.tar.gz<br />
tar xvzf ACE-6.5.6.tar.gz<br />
cd ACE_wrappers/<br />
mkdir build<br />
cd build</pre><br />
<br />
Here is where we compile ACE <br />
<br />
<pre><br />
../configure --disable-ssl<br />
make<br />
make install<br />
</pre><br />
<br />
<pre>In the event one has a 4-core processor, you would use "make -j5", minus quotations.<br />
Note: There is NO SPACE inbetween j and 5. It's all a single stroke.</pre><br />
<br />
Please note that any old revision of the OpenSSL package installed by the distribution may/will interfere with the new version. See your distribution documentation for information on how to remove it to be able to use the new one.<br />
<br />
'''Installing MySQL'''<br />
Start by downloading and dpkg the package.<br />
<pre><br />
wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb<br />
dpkg -i mysql-apt-config_0.8.12-1_all.deb<br />
</pre><br />
After following the configuration screen you want to apt-get update and install the libraries.<br />
<pre><br />
apt-get update<br />
apt-get install mysql-server mysql-client libmysqlclient-dev libmysql++-dev<br />
</pre><br />
<br />
'''Installing GCC 9'''<br />
Start by adding ppa:ubuntu-toolchain-r/test to your repository list<br />
<pre><br />
add-apt-repository ppa:ubuntu-toolchain-r/test -y<br />
apt-get update<br />
</pre><br />
Now we can install gcc-9 and g++-9.<br />
<pre><br />
apt-get install gcc-9 g++-9<br />
</pre><br />
<br />
Symbolic links cc and c++ are installed by default.<br />
We will install symbol links for gcc and g++, then link cc and c++ to gcc and g++ respectively.<br />
<pre><br />
update-alternatives --remove-all gcc <br />
update-alternatives --remove-all g++<br />
<br />
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 10<br />
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 10<br />
<br />
update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 10<br />
update-alternatives --set cc /usr/bin/gcc<br />
update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 10<br />
update-alternatives --set c++ /usr/bin/g++<br />
</pre><br />
<br />
The last step is configuring the default commands for gcc, g++.<br />
<pre><br />
update-alternatives --config gcc<br />
update-alternatives --config g++<br />
</pre><br />
<br />
== Compiling and Installing the SkyFireEMU 5.4.8 ==<br />
<br />
Grab the latest version of SkyFire.548 using git:<br />
<br />
<pre><br />
git clone git://github.com/ProjectSkyfire/SkyFire.548<br />
</pre><br />
<br />
This should create a directory called SkyFireEMU that will contain all the files necessary to compile the server and it's tools. Change to the directory, configure, and build.<br />
<br />
<pre><br />
cd SkyFire.548<br />
mkdir build && cd build<br />
cmake ../ -DCMAKE_INSTALL_PREFIX=$HOME/skyfire-server/ -DTOOLS=1<br />
make -j(#cores+1)<br />
make install<br />
</pre><br />
<br />
Parameter explanations <br />
<br />
<pre>-DACE_LIBRARY=<path to ACE library> (full path to your libACE.so file INCLUDING the filename - do not use if you have ACE installed systemwide)<br />
-DACE_INCLUDE_DIR=<path to ACE includes/headers> (path to the libACE include directory - do not use if you have ACE installed systemwide)<br />
-DOPENSSL_LIBRARIES=<path to OpenSSL library> (path to your OpenSSL library - do not use if you have OpenSSL installed systemwide)<br />
-DOPENSSL_INCLUDE_DIR=<path to OpenSSL includes> (path to your OpenSSL includes directory - do not use if you have OpenSSL installed systemwide)<br />
<br />
-DSERVERS Build worldserver and authserver<br />
-DSCRIPTS Build core with scripts included<br />
-DTOOLS Build map/vmap extraction/assembler tools<br />
-DUSE_SCRIPTPCH Use precompiled headers when compiling scripts<br />
-DUSE_COREPCH Use precompiled headers when compiling servers<br />
-DUSE_SFMT Use SFMT as random numbergenerator<br />
-DWITH_WARNINGS Show all warnings during compile<br />
-DWITH_COREDEBUG Include additional debug-code in core<br />
-DWITH_SQL Copy SQL files during installation<br />
-DPREFIX Set installation directory<br />
-DCONF_DIR Set configuration directory<br />
-DLIBSDIR Set library directory<br />
-DCMAKE_C_FLAGS Set C_FLAGS for compile (advanced users only)<br />
-DCMAKE_CXX_FLAGS Set CXX_FLAGS for compile (advanced users only)</pre><br />
<br />
<br />
----<br />
<br />
== Installing SkyFireDataBase (SFDB) ==<br />
<br />
Now we will set up the database framework for which SkyFire will be installed into:<br />
<br />
'''It is assumed that you cloned SkyFireEMU into your home directory ~/'''<br />
<br />
Replace the parts in <> to the correct administrative username, and associated password.<br />
Usually the administrative user is root, but you may have altered it.<br />
<br />
<br />
'''In the terminal window:'''<br />
<pre>mysql -u <mysql_root> -p < ~/SkyFireEMU/sql/create/create_mysql.sql<br />
mysql -u <mysql_root> -p auth < ~/SkyFireEMU/sql/base/auth/auth.sql <br />
mysql -u <mysql_root> -p characters < ~/SkyFireEMU/sql/base/character/character.sql</pre><br />
<br />
----<br />
<br />
Grab the latest version of SkyFireDB on our forum. http://www.projectskyfire.org/index.php?/files/<br />
<br><br />
The DB download contains an installer for Linux and Windows. Also a single Sql file.<br />
<br />
'''!!!You will also need to manually run any sql's found in the cores sql folder .../sql/updates/world and .../sql/updates/char!!!'''<br />
<br />
(If you are doing this for more than local use you will also need to change a database entry using this mysql command.)<br />
<pre>update auth.realmlist set adress = "YOUR IP HERE" where id = 1;</pre><br />
<br />
== Configuration ==<br />
<br />
Now move and edit the configuration files to run the server.<br />
<br />
<pre>mv ~/skyfire/etc/worldserver.conf.dist ~/skyfire/etc/worldserver.conf<br />
mv ~/skyfire/etc/authserver.conf.dist ~/skyfire/etc/authserver.conf</pre><br />
<br />
Edit both of these files to the correct Mysql user name, password, and your DataDir. <br />
<pre>nano ~/skyfire/etc/(correctserver).conf</pre><br />
<br />
== Extractor and VMAPs ==<br />
<br />
If you need a Windows compiled copy of the DBC Extractor and the tools for the VMAP<BR> <br />
Extraction and assembly you can get a copy of them using your GIT client and download<BR> <br />
them from: https://github.com/ProjectSkyfire/SkyFire-Community-Tools<BR><BR><BR><br />
<br />
Before doing any of these commands, follow the guide at <br />
<pre>http://appdb.winehq.org/objectManager.php?sClass=version&iId=20549</pre><br />
to obtain a working installation of the latest WoW 4.0.X client, then proceed:<br />
<br />
The last and final step of setting up SkyFireEMU is to obtain a proper set of maps for use in the server. Change to the WoW directory and run some commands:<br />
<br />
<pre>cd "Wow Directory"<br />
~/skyfire/bin/extractor<br />
~/skyfire/bin/vmap3extractor<br />
mv dbc ~/skyfire/bin/dbc<br />
mv maps ~/skyfire/bin/maps<br />
mkdir vmaps <br />
~/skyfire/bin/vmap3assembler<br />
mv vmaps ~/skyfire/bin/<br />
</pre><br />
<br />
== SkyFire Patcher ==<br />
<br />
The client will need to be patched before it can properly connect to the server. Acquire the patcher in the Community Tools repository.<br />
<br />
<pre>git clone git://github.com/ProjectSkyfire/SkyFire-Community-Tools.git</pre><br />
<br />
Install Mono in Wine or Crossover Office and run the patcher to modify your WoW.exe file.<br />
<br />
to install Mono simply, and correctly configured, please view: <br />
<pre>http://wiki.winehq.org/winetricks</pre><br />
to obtain specific versions/running hackery in your Wine bottle.<br />
<br />
== References ==<br />
<br />
http://www.trinitycore.org/w/How-to:Linux<br />
<br />
http://wiki.cactusemu.com/index.php?title=Installation_%28Linux%29<br />
<br />
http://wiki.winehq.org/winetricks<br />
<br />
http://appdb.winehq.org/objectManager.php?sClass=version&iId=20549<br />
<br />
<br />
[[Category:Installation]]</div>200.126.131.90https://wiki.projectskyfire.org/index.php?title=Installation_(Ubuntu_16.04LTS)&diff=734Installation (Ubuntu 16.04LTS)2019-10-23T04:30:05Z<p>200.126.131.90: </p>
<hr />
<div>== Introduction ==<br />
<br />
This is a basic guide on how to install SkyFire548 and SFDB from scratch. **Please note this is a work in progress and only contains enough information to get most people a viable server in Linux.<br />
<br />
== Prerequisites ==<br />
<br />
The compilation of SkyFire548 and the setup of SFDB will require certain packages to be installed. In Ubuntu use the following command:<br />
<br />
Debian based distributions use these commands:<br />
<pre><br />
apt-get install build-essential autoconf libtool gcc g++ make cmake subversion git patch wget links zip unzip openssl libssl-dev libreadline-gplv2-dev zlib1g-dev libbz2-dev git-core libace-dev libncurses5-dev -y<br />
</pre><br />
<br />
You may also want to install phpmyadmin and/or Apache. Do not forget the user and password for the Mysql root user.<br />
<br />
'''Installing OpenSSL''' - You should check if "1.1.0G" or newer is the latest version installed.<br />
<br />
For cases where you want to run an even newer release of OpenSSL than mentioned here, or your distribution not supplying a version that isn't of recent date, please check your distributions repositories or documentation. You can also retrieve it as sourcecode at http://openssl.org/source (feel free to use newer packages if you really feel like it). To build it from sourcecode, here's a primer : <br />
<br />
<pre><br />
wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz<br />
tar -xvf openssl-1.1.1c.tar.gz<br />
cd openssl-1.1.1c.tar.gz<br />
mkdir build<br />
cd build<br />
</pre><br />
<br />
Alternative 1 : Local installation <br />
<br />
<pre><br />
../config --prefix=/home/`echo $USER`/.sys shared<br />
make<br />
make install<br />
</pre><br />
<br />
Alternative 2 : Systemwide installation <br />
<br />
<pre><br />
../config shared<br />
make<br />
sudo make install<br />
</pre><br />
<br />
'''Installing ACE''' - You should check if "6.3.3" or newer is the latest version installed.<br />
<br />
For cases where you want to run an even newer release of ACE than mentioned here, or your distribution not supplying a version that isn't of recent date, please check your distributions repositories or documentation. You can also retrieve it as sourcecode at http://download.dre.vanderbilt.edu (feel free to use newer packages if you really feel like it). To build it from sourcecode,<br />
start by downloading and unzipping the source:<br />
<br />
<pre><br />
wget http://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-6_5_6/ACE-6.5.6.tar.gz<br />
tar xvzf ACE-6.5.6.tar.gz<br />
cd ACE_wrappers/<br />
mkdir build<br />
cd build</pre><br />
<br />
Here is where we compile ACE <br />
<br />
<pre><br />
../configure --disable-ssl<br />
make<br />
make install<br />
</pre><br />
<br />
<pre>In the event one has a 4-core processor, you would use "make -j5", minus quotations.<br />
Note: There is NO SPACE inbetween j and 5. It's all a single stroke.</pre><br />
<br />
Please note that any old revision of the OpenSSL package installed by the distribution may/will interfere with the new version. See your distribution documentation for information on how to remove it to be able to use the new one.<br />
<br />
'''Installing MySQL'''<br />
Start by downloading and dpkg the package.<br />
<pre><br />
wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb<br />
dpkg -i mysql-apt-config_0.8.12-1_all.deb<br />
</pre><br />
After following the configuration screen you want to apt-get update and install the libraries.<br />
<pre><br />
apt-get update<br />
apt-get install mysql-server mysql-client libmysqlclient-dev libmysql++-dev<br />
</pre><br />
<br />
'''Installing GCC 9'''<br />
Start by adding ppa:ubuntu-toolchain-r/test to your repository list<br />
<pre><br />
add-apt-repository ppa:ubuntu-toolchain-r/test -y<br />
apt-get update<br />
</pre><br />
Now we can install gcc-9 and g++-9.<br />
<pre><br />
apt-get install gcc-9 g++-9<br />
</pre><br />
<br />
Symbolic links cc and c++ are installed by default.<br />
We will install symbol links for gcc and g++, then link cc and c++ to gcc and g++ respectively.<br />
<pre><br />
update-alternatives --remove-all gcc <br />
update-alternatives --remove-all g++<br />
<br />
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 10<br />
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 10<br />
<br />
update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 10<br />
update-alternatives --set cc /usr/bin/gcc<br />
update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 10<br />
update-alternatives --set c++ /usr/bin/g++<br />
</pre><br />
<br />
The last step is configuring the default commands for gcc, g++.<br />
<pre><br />
update-alternatives --config gcc<br />
update-alternatives --config g++<br />
</pre><br />
<br />
== Compiling and Installing the SkyFireEMU 5.4.8 ==<br />
<br />
Grab the latest version of SkyFire.548 using git:<br />
<br />
<pre><br />
git clone git://github.com/ProjectSkyfire/SkyFire.548<br />
</pre><br />
<br />
This should create a directory called SkyFireEMU that will contain all the files necessary to compile the server and it's tools. Change to the directory, configure, and build.<br />
<br />
<pre><br />
cd SkyFire.548<br />
mkdir build && cd build<br />
cmake ../ -DTOOLS=1<br />
make -j(#cores+1)<br />
make install<br />
</pre><br />
<br />
Parameter explanations <br />
<br />
<pre>-DACE_LIBRARY=<path to ACE library> (full path to your libACE.so file INCLUDING the filename - do not use if you have ACE installed systemwide)<br />
-DACE_INCLUDE_DIR=<path to ACE includes/headers> (path to the libACE include directory - do not use if you have ACE installed systemwide)<br />
-DOPENSSL_LIBRARIES=<path to OpenSSL library> (path to your OpenSSL library - do not use if you have OpenSSL installed systemwide)<br />
-DOPENSSL_INCLUDE_DIR=<path to OpenSSL includes> (path to your OpenSSL includes directory - do not use if you have OpenSSL installed systemwide)<br />
<br />
-DSERVERS Build worldserver and authserver<br />
-DSCRIPTS Build core with scripts included<br />
-DTOOLS Build map/vmap extraction/assembler tools<br />
-DUSE_SCRIPTPCH Use precompiled headers when compiling scripts<br />
-DUSE_COREPCH Use precompiled headers when compiling servers<br />
-DUSE_SFMT Use SFMT as random numbergenerator<br />
-DWITH_WARNINGS Show all warnings during compile<br />
-DWITH_COREDEBUG Include additional debug-code in core<br />
-DWITH_SQL Copy SQL files during installation<br />
-DPREFIX Set installation directory<br />
-DCONF_DIR Set configuration directory<br />
-DLIBSDIR Set library directory<br />
-DCMAKE_C_FLAGS Set C_FLAGS for compile (advanced users only)<br />
-DCMAKE_CXX_FLAGS Set CXX_FLAGS for compile (advanced users only)</pre><br />
<br />
<br />
----<br />
<br />
== Installing SkyFireDataBase (SFDB) ==<br />
<br />
Now we will set up the database framework for which SkyFire will be installed into:<br />
<br />
'''It is assumed that you cloned SkyFireEMU into your home directory ~/'''<br />
<br />
Replace the parts in <> to the correct administrative username, and associated password.<br />
Usually the administrative user is root, but you may have altered it.<br />
<br />
<br />
'''In the terminal window:'''<br />
<pre>mysql -u <mysql_root> -p < ~/SkyFireEMU/sql/create/create_mysql.sql<br />
mysql -u <mysql_root> -p auth < ~/SkyFireEMU/sql/base/auth/auth.sql <br />
mysql -u <mysql_root> -p characters < ~/SkyFireEMU/sql/base/character/character.sql</pre><br />
<br />
----<br />
<br />
Grab the latest version of SkyFireDB on our forum. http://www.projectskyfire.org/index.php?/files/<br />
<br><br />
The DB download contains an installer for Linux and Windows. Also a single Sql file.<br />
<br />
'''!!!You will also need to manually run any sql's found in the cores sql folder .../sql/updates/world and .../sql/updates/char!!!'''<br />
<br />
(If you are doing this for more than local use you will also need to change a database entry using this mysql command.)<br />
<pre>update auth.realmlist set adress = "YOUR IP HERE" where id = 1;</pre><br />
<br />
== Configuration ==<br />
<br />
Now move and edit the configuration files to run the server.<br />
<br />
<pre>mv ~/skyfire/etc/worldserver.conf.dist ~/skyfire/etc/worldserver.conf<br />
mv ~/skyfire/etc/authserver.conf.dist ~/skyfire/etc/authserver.conf</pre><br />
<br />
Edit both of these files to the correct Mysql user name, password, and your DataDir. <br />
<pre>nano ~/skyfire/etc/(correctserver).conf</pre><br />
<br />
== Extractor and VMAPs ==<br />
<br />
If you need a Windows compiled copy of the DBC Extractor and the tools for the VMAP<BR> <br />
Extraction and assembly you can get a copy of them using your GIT client and download<BR> <br />
them from: https://github.com/ProjectSkyfire/SkyFire-Community-Tools<BR><BR><BR><br />
<br />
Before doing any of these commands, follow the guide at <br />
<pre>http://appdb.winehq.org/objectManager.php?sClass=version&iId=20549</pre><br />
to obtain a working installation of the latest WoW 4.0.X client, then proceed:<br />
<br />
The last and final step of setting up SkyFireEMU is to obtain a proper set of maps for use in the server. Change to the WoW directory and run some commands:<br />
<br />
<pre>cd "Wow Directory"<br />
~/skyfire/bin/extractor<br />
~/skyfire/bin/vmap3extractor<br />
mv dbc ~/skyfire/bin/dbc<br />
mv maps ~/skyfire/bin/maps<br />
mkdir vmaps <br />
~/skyfire/bin/vmap3assembler<br />
mv vmaps ~/skyfire/bin/<br />
</pre><br />
<br />
== SkyFire Patcher ==<br />
<br />
The client will need to be patched before it can properly connect to the server. Acquire the patcher in the Community Tools repository.<br />
<br />
<pre>git clone git://github.com/ProjectSkyfire/SkyFire-Community-Tools.git</pre><br />
<br />
Install Mono in Wine or Crossover Office and run the patcher to modify your WoW.exe file.<br />
<br />
to install Mono simply, and correctly configured, please view: <br />
<pre>http://wiki.winehq.org/winetricks</pre><br />
to obtain specific versions/running hackery in your Wine bottle.<br />
<br />
== References ==<br />
<br />
http://www.trinitycore.org/w/How-to:Linux<br />
<br />
http://wiki.cactusemu.com/index.php?title=Installation_%28Linux%29<br />
<br />
http://wiki.winehq.org/winetricks<br />
<br />
http://appdb.winehq.org/objectManager.php?sClass=version&iId=20549<br />
<br />
<br />
[[Category:Installation]]</div>200.126.131.90https://wiki.projectskyfire.org/index.php?title=Installation_(Ubuntu_16.04LTS)&diff=733Installation (Ubuntu 16.04LTS)2019-10-23T04:29:28Z<p>200.126.131.90: </p>
<hr />
<div>== Introduction ==<br />
<br />
This is a basic guide on how to install SkyFire548 and SFDB from scratch. **Please note this is a work in progress and only contains enough information to get most people a viable server in Linux.<br />
<br />
== Prerequisites ==<br />
<br />
The compilation of SkyFire548 and the setup of SFDB will require certain packages to be installed. In Ubuntu use the following command:<br />
<br />
Debian based distributions use these commands:<br />
<pre><br />
apt-get install build-essential autoconf libtool gcc g++ make cmake subversion git patch wget links zip unzip openssl libssl-dev libreadline-gplv2-dev zlib1g-dev libbz2-dev git-core libace-dev libncurses5-dev -y<br />
</pre><br />
<br />
You may also want to install phpmyadmin and/or Apache. Do not forget the user and password for the Mysql root user.<br />
<br />
'''Installing OpenSSL''' - You should check if "1.1.0G" or newer is the latest version installed.<br />
<br />
For cases where you want to run an even newer release of OpenSSL than mentioned here, or your distribution not supplying a version that isn't of recent date, please check your distributions repositories or documentation. You can also retrieve it as sourcecode at http://openssl.org/source (feel free to use newer packages if you really feel like it). To build it from sourcecode, here's a primer : <br />
<br />
<pre><br />
wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz<br />
tar -xvf openssl-1.1.1c.tar.gz<br />
cd openssl-1.1.1c.tar.gz<br />
mkdir build<br />
cd build<br />
</pre><br />
<br />
Alternative 1 : Local installation <br />
<br />
<pre><br />
../config --prefix=/home/`echo $USER`/.sys shared<br />
make<br />
make install<br />
</pre><br />
<br />
Alternative 2 : Systemwide installation <br />
<br />
<pre><br />
../config shared<br />
make<br />
sudo make install<br />
</pre><br />
<br />
'''Installing ACE''' - You should check if "6.3.3" or newer is the latest version installed.<br />
<br />
For cases where you want to run an even newer release of ACE than mentioned here, or your distribution not supplying a version that isn't of recent date, please check your distributions repositories or documentation. You can also retrieve it as sourcecode at http://download.dre.vanderbilt.edu (feel free to use newer packages if you really feel like it). To build it from sourcecode,<br />
start by downloading and unzipping the source:<br />
<br />
<pre><br />
wget http://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-6_5_6/ACE-6.5.6.tar.gz<br />
tar xvzf ACE-6.5.6.tar.gz<br />
cd ACE_wrappers/<br />
mkdir build<br />
cd build</pre><br />
<br />
Here is where we compile ACE <br />
<br />
<pre><br />
../configure --disable-ssl<br />
make<br />
make install<br />
</pre><br />
<br />
<pre>In the event one has a 4-core processor, you would use "make -j5", minus quotations.<br />
Note: There is NO SPACE inbetween j and 5. It's all a single stroke.</pre><br />
<br />
Please note that any old revision of the OpenSSL package installed by the distribution may/will interfere with the new version. See your distribution documentation for information on how to remove it to be able to use the new one.<br />
<br />
'''Installing MySQL'''<br />
Start by downloading and dpkg the package.<br />
<pre><br />
wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb<br />
dpkg -i mysql-apt-config_0.8.12-1_all.deb<br />
</pre><br />
After following the configuration screen you want to apt-get update and install the libraries.<br />
<pre><br />
apt-get update<br />
apt-get install mysql-server mysql-client libmysqlclient-dev libmysql++-dev<br />
</pre><br />
<br />
'''Installing GCC 9'''<br />
Start by adding ppa:ubuntu-toolchain-r/test to your repository list<br />
<pre><br />
add-apt-repository ppa:ubuntu-toolchain-r/test -y<br />
apt-get update<br />
</pre><br />
Now we can install gcc-9 and g++-9.<br />
<pre><br />
apt-get install gcc-9 g++-9<br />
</pre><br />
<br />
Symbolic links cc and c++ are installed by default.<br />
We will install symbol links for gcc and g++, then link cc and c++ to gcc and g++ respectively.<br />
<pre><br />
update-alternatives --remove-all gcc <br />
update-alternatives --remove-all g++<br />
<br />
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 10<br />
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 10<br />
<br />
update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 10<br />
update-alternatives --set cc /usr/bin/gcc<br />
update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 10<br />
update-alternatives --set c++ /usr/bin/g++<br />
</pre><br />
<br />
The last step is configuring the default commands for gcc, g++.<br />
<pre><br />
update-alternatives --config gcc<br />
update-alternatives --config g++<br />
</pre><br />
<br />
== Compiling and Installing the SkyFireEMU 5.4.8 ==<br />
<br />
Grab the latest version of SkyFire.548 using git:<br />
<br />
<pre><br />
git clone git://github.com/ProjectSkyfire/SkyFire.548<br />
</pre><br />
<br />
This should create a directory called SkyFireEMU that will contain all the files necessary to compile the server and it's tools. Change to the directory, configure, and build.<br />
<br />
<pre><br />
cd SkyFire.548<br />
mkdir build<br />
cd build<br />
cmake ../ -DTOOLS=1<br />
make -j(#cores+1)<br />
make install<br />
</pre><br />
<br />
Parameter explanations <br />
<br />
<pre>-DACE_LIBRARY=<path to ACE library> (full path to your libACE.so file INCLUDING the filename - do not use if you have ACE installed systemwide)<br />
-DACE_INCLUDE_DIR=<path to ACE includes/headers> (path to the libACE include directory - do not use if you have ACE installed systemwide)<br />
-DOPENSSL_LIBRARIES=<path to OpenSSL library> (path to your OpenSSL library - do not use if you have OpenSSL installed systemwide)<br />
-DOPENSSL_INCLUDE_DIR=<path to OpenSSL includes> (path to your OpenSSL includes directory - do not use if you have OpenSSL installed systemwide)<br />
<br />
-DSERVERS Build worldserver and authserver<br />
-DSCRIPTS Build core with scripts included<br />
-DTOOLS Build map/vmap extraction/assembler tools<br />
-DUSE_SCRIPTPCH Use precompiled headers when compiling scripts<br />
-DUSE_COREPCH Use precompiled headers when compiling servers<br />
-DUSE_SFMT Use SFMT as random numbergenerator<br />
-DWITH_WARNINGS Show all warnings during compile<br />
-DWITH_COREDEBUG Include additional debug-code in core<br />
-DWITH_SQL Copy SQL files during installation<br />
-DPREFIX Set installation directory<br />
-DCONF_DIR Set configuration directory<br />
-DLIBSDIR Set library directory<br />
-DCMAKE_C_FLAGS Set C_FLAGS for compile (advanced users only)<br />
-DCMAKE_CXX_FLAGS Set CXX_FLAGS for compile (advanced users only)</pre><br />
<br />
<br />
----<br />
<br />
== Installing SkyFireDataBase (SFDB) ==<br />
<br />
Now we will set up the database framework for which SkyFire will be installed into:<br />
<br />
'''It is assumed that you cloned SkyFireEMU into your home directory ~/'''<br />
<br />
Replace the parts in <> to the correct administrative username, and associated password.<br />
Usually the administrative user is root, but you may have altered it.<br />
<br />
<br />
'''In the terminal window:'''<br />
<pre>mysql -u <mysql_root> -p < ~/SkyFireEMU/sql/create/create_mysql.sql<br />
mysql -u <mysql_root> -p auth < ~/SkyFireEMU/sql/base/auth/auth.sql <br />
mysql -u <mysql_root> -p characters < ~/SkyFireEMU/sql/base/character/character.sql</pre><br />
<br />
----<br />
<br />
Grab the latest version of SkyFireDB on our forum. http://www.projectskyfire.org/index.php?/files/<br />
<br><br />
The DB download contains an installer for Linux and Windows. Also a single Sql file.<br />
<br />
'''!!!You will also need to manually run any sql's found in the cores sql folder .../sql/updates/world and .../sql/updates/char!!!'''<br />
<br />
(If you are doing this for more than local use you will also need to change a database entry using this mysql command.)<br />
<pre>update auth.realmlist set adress = "YOUR IP HERE" where id = 1;</pre><br />
<br />
== Configuration ==<br />
<br />
Now move and edit the configuration files to run the server.<br />
<br />
<pre>mv ~/skyfire/etc/worldserver.conf.dist ~/skyfire/etc/worldserver.conf<br />
mv ~/skyfire/etc/authserver.conf.dist ~/skyfire/etc/authserver.conf</pre><br />
<br />
Edit both of these files to the correct Mysql user name, password, and your DataDir. <br />
<pre>nano ~/skyfire/etc/(correctserver).conf</pre><br />
<br />
== Extractor and VMAPs ==<br />
<br />
If you need a Windows compiled copy of the DBC Extractor and the tools for the VMAP<BR> <br />
Extraction and assembly you can get a copy of them using your GIT client and download<BR> <br />
them from: https://github.com/ProjectSkyfire/SkyFire-Community-Tools<BR><BR><BR><br />
<br />
Before doing any of these commands, follow the guide at <br />
<pre>http://appdb.winehq.org/objectManager.php?sClass=version&iId=20549</pre><br />
to obtain a working installation of the latest WoW 4.0.X client, then proceed:<br />
<br />
The last and final step of setting up SkyFireEMU is to obtain a proper set of maps for use in the server. Change to the WoW directory and run some commands:<br />
<br />
<pre>cd "Wow Directory"<br />
~/skyfire/bin/extractor<br />
~/skyfire/bin/vmap3extractor<br />
mv dbc ~/skyfire/bin/dbc<br />
mv maps ~/skyfire/bin/maps<br />
mkdir vmaps <br />
~/skyfire/bin/vmap3assembler<br />
mv vmaps ~/skyfire/bin/<br />
</pre><br />
<br />
== SkyFire Patcher ==<br />
<br />
The client will need to be patched before it can properly connect to the server. Acquire the patcher in the Community Tools repository.<br />
<br />
<pre>git clone git://github.com/ProjectSkyfire/SkyFire-Community-Tools.git</pre><br />
<br />
Install Mono in Wine or Crossover Office and run the patcher to modify your WoW.exe file.<br />
<br />
to install Mono simply, and correctly configured, please view: <br />
<pre>http://wiki.winehq.org/winetricks</pre><br />
to obtain specific versions/running hackery in your Wine bottle.<br />
<br />
== References ==<br />
<br />
http://www.trinitycore.org/w/How-to:Linux<br />
<br />
http://wiki.cactusemu.com/index.php?title=Installation_%28Linux%29<br />
<br />
http://wiki.winehq.org/winetricks<br />
<br />
http://appdb.winehq.org/objectManager.php?sClass=version&iId=20549<br />
<br />
<br />
[[Category:Installation]]</div>200.126.131.90