Building Bitfighter

From Bitfighter
Revision as of 08:09, 5 January 2010 by 97.120.105.92 (Talk)

Linux

Bitfighter should build on any major flavor of Linux. It has been tested and is known to work on Ubuntu and Centos.

The Bitfighter client depends on Freeglut and the Lua development libraries. Freeglut is not needed to build a Bitfighter dedicated server (without client portions).

Bitfighter must be compile with the g++ compiler, which is not included in many Linux distributions. SVN is required to obtain the source code.

To get the Bitfighter source, use SVN (check the repository for the latest version):

svn co https://zap.svn.sourceforge.net/svnroot/zap/release-012a bitfighter


Building full game client on a clean install of Ubuntu

sudo apt-get update
sudo apt-get install subversion
sudo apt-get install g++
sudo apt-get intall freeglut-dev
sudo apt-get liblua5.1-0
 
# Get the source code
svn co https://zap.svn.sourceforge.net/svnroot/zap/[version] bitfighter
 
# Build the game -- the standard options should work
cd bitfighter
make
 
# Copy required files into exe folder:
cd exe
cp -r ../installer/levels .
cp -r ../installer/robots .


Building a dedicated server on a clean ServerHitch Centos virtual server instance

yum -y --disableplugin=fastestmirror update
yum -y --disableplugin=fastestmirror install subversion
yum -y --disableplugin=fastestmirror install gcc
yum -y --disableplugin=fastestmirror install gcc-c++
yum -y --disableplugin=fastestmirror install zip        # For archiving purposes
 
# Special steps are needed to get Lua:
# From http://wiki.centos.org/AdditionalResources/Repositories/RPMForge
yum -y --disableplugin=fastestmirror install yum-priorities
cd ~
wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -i rpmforge-release-0.3.6-1.el5.rf.*.rpm
 
yum -y --disableplugin=fastestmirror install lua-devel
 
# Get the source code
svn co https://zap.svn.sourceforge.net/svnroot/zap/[version] bitfighter
 
# Build the dedicated server (called bitfighterd)
cd bitfighter
make dedicated LUALIB=/usr/lib/liblua.a   # Lua libs are given non-standard name
 
 
# Copy required files into exe folder:
cd exe
cp -r ../installer/levels .
cp -r ../installer/robots .

Windows

Bitfighter can be built with MS Visual C++ 2005 Express Edition, a free download from Microsoft. Game builds with VC++ 2008, but causes odd runtime error when exiting. Public compiled versions of the game will continue to be compiled on VC++ 2005 until that issue is worked out.

<P> Currently investigating porting of Win compilation with MinGW, to make cross-platform maintenance easier. MinGW progress: Install mingw Edit various makefiles and ensure that compiler options are correct (i.e. comment/uncomment makefile lines according to the comments) use c:\MinGW\bin\mingw32-make

  • libtomcrypt builds
  • tnl builds
  • master builds

The game itself is not compiling with MinGW, though the problem seems to be the new Lua support. I'm going to migrate from using Luna to LuaPlus, and see if that helps things. I'll update this page as appropriate.

OS X

Bitfighter builds on OS X using xcode.