Fix to build the Unity Master Server on Ubuntu with GCC 4.7 and make

To save you guys some troubles I had when trying to get the master server to build under Ubuntu with GCC 4.7 and the provided makefile here’s a patch for the DS_BinarySearchTree.h in RakNet/Sources.

Just replace the file with the provided file in the attachment, and run

make cleanall; make

This should build the MasterServer executable in the path. Run the MasterServer with

./MasterServer [-d] [-p xxxxx] [-l path] [-e (0,1,2)] [-c xxxxx]

-d will run the server as a daemon
-p will run on the specified port (defaults to 23466)
-l (lowercase L) will log to the specified path
-e specifies the log level
-c specifies the maximum connection count (defaults to 1000)

Other possible Problems

If you encounter additional troubles while building/compiling be sure you have installed libncurses5-dev.

If the compiler complains about daemon not being defined add the following include in the MasterServer.h file:

#include <unistd.h>

Hope this helps, cheers

Sargo

Some keywords to help fellow googlers. DS_BinarySearchTree.h daemon(1, 0) RakNet Unity Network Master Server Height FindParent

1027223–38128–$DS_BinarySearchTree.zip (6.87 KB)

Fixes troubles with Facilitators as well, thanks!
However I’ve stumbled upon a new issue while compiling with 4.8.2 version of GCC regarding the same file.
It’s an easy fix nevertheless.

I wouldn’t have thought that problem still exists after well more than 1 1/2 years. Glad it has helped you :wink:

Thanks for your help Sargo.
However some new problems occured.

For those who land here and have errors because of pthread:

SignaledEvent.cpp:(.text+0x81): undefined reference to `pthread_mutexattr_init'
SignaledEvent.cpp:(.text+0xf0): undefined reference to `pthread_mutexattr_destroy'
RakThread.cpp:(.text+0x55): undefined reference to `pthread_attr_setstacksize'
RakThread.cpp:(.text+0x7e): undefined reference to `pthread_create'

Just edit Makefile and change :

to

Hi guys, Sorry if this is the wrong place to post, but how would one go about installing any of this on Ubuntu Server Edition? I could just use desktop ubuntu, but since I am planning to test a build with an outdated netbook, I need the linux distro stripped down to bare metal as much as possible, to make the most of the umble atom inside… :smile:

EDIT: Then again, I could just compile on Desktop, then transfer to server, but otherwise not sure… :eyes: