[Crossfire-wiki] [Crossfire DokuWiki] page changed: crossfire_compile_guide

no-reply_wiki at metalforge.org no-reply_wiki at metalforge.org
Sun Jun 19 15:42:43 CDT 2011


A page in your DokuWiki was added or changed. Here are the details:

Date        : 2011/06/19 15:42
User        : 
Edit Summary: 

@@ -191,12 +191,8 @@
  
  **Optional:** To enforce the unit test or check when compiling the server, use make -k check
  
    $ ./configure && make -k check && make install
- 
- 
- 
- 
  
  ==== LAUNCH ====
  
  Once the server has been successfully built (aka compiled), you need to launch the Crossfire Server application
@@ -223,58 +219,12 @@
  
  === Launch, Part2 ===
  
  
- As observed on 2008-June-08, launching the server using the method listed above does or might not work.  It will result in an error and segmentation fault (unable to find hook cfapi_map_trigger_connected! Segmentation fault (core dumped) ).  So, try launching the server this way from any directory:
+ FIXME -- How to use crossloop for running the server; crossloop is a script that automatically restarts the server if/when it crashes and can also provide useful debugging or error information from the crash event.
  
-   $ ./crossfire &
- 
- FIXME - Confirm which method should be used to launch the server and if there is a difference between Trunk and Branches/1.x
- 
- FIXME -- How to use crossloop for running the server; crossloop is a script that automatically restarts the server if/when it crashes and can also provide useful debugging or error information from the crash event.
  
- == Revision 2010 Aug == 
  
- (still being tested)
-  
- crossfire-server will not run as root, but the above installation instructions make a var directory owned by root, so it will not be writable and the server cannot save player information, scores, etc... if you follow the instructions as presented.  The easiest fix is to make a directory var somewhere that is writable by the user that will be running crossfire then symbolically link /usr/games/crossfire/var to this directory.  As an example, you can make a user and group games (they already exist in most linux distributions) and then install a crossfire var directory in your system /var as follows:
- <code sh>
- $ sudo mkdir /var/games         # probably already exists
- $ cd /usr/games/crossfire/var
- $ tar cf - . | ( cd /var/games/ ; sudo tar xf - )
- $ sudo rm -fr crossfire   # make sure you're still in the /usr/games/crossfire/var directory!
- $ sudo ln -s /var/games/crossfire crossfire
- </code>
- \\ The next part sets permissions on /var/games/crossfire to allow user and group writing by the games user and group.  Comment indicates a variation that allows user, but not group, writing
- <code sh>
- $ cd /var/games
- $ sudo chown -R games.games crossfire
- $ sudo chmod -R ug+rwX crossfire         # sudo chmod -R u+rwX crossfire 
- $ sudo chmod -R o-w crossfire            # sudo chmod -R og-w crossfire
- </code>
- \\ The next command locks the group of newly created files to 'games', only really useful if you chose the option to allow group 'games' to write to the var directory.  I like this because it allows me to run the server as either user games or as myself if I am a member of group games, and don't need to remember which to run it as.  If I run it from the command line I may not always remember to change to user games before executing the server.  Again from directory /var/games do
- <code sh>
- $ sudo chmod g+s crossfire
- $ sudo find ./crossfire -type d -exec chmod g+s '{}' \;
- </code>
- \\ Now you want a crossfire executable somewhere in your path.  This can be in your home directory, but I'll put it in /usr/local/bin because that's where I have executable for crossfire SVN client located already:
- <code sh>
- $ sudo ln -s ../../games/crossfire/bin/crossfire-server /usr/local/bin/crossfire
- </code>
- \\ Alternatively, you can add /usr/games/crossfire/bin to your path.
- \\ 
- \\ Then invoke the server with either crossfire (if you made the link) or with crossfire-server (if you added the bin directory to your path).
- \\ 
- \\ These directions work with the default SVN trunk server install and config as of 18 Aug 10.  There's currently an error message that looks like this:
- \\ 
- \\ 10/08/18 19:49:35 [Info]    Warning: Unable to open /usr/games/crossfire/var/crossfire/accounts [No such file or directory]
- \\ 
- \\ This can be fixed by creating a symlink in /var/games/crossfire
- <code sh>
- $ cd /var/games/crossfire
- $ sudo ln -s account accounts
- $ sudo chown games.games accounts
- </code>
  ===== Microsoft (c) Windows =====
  The following tools are used to compile the server:
    * Microsoft Visual Studio 6 (service pack 4 probably). Server has not been tested with other versions.
    * flex, from [[http://gnuwin32.sourceforge.net/packages/flex.htm]].


IP-Address  : 107.2.148.83
Old Revision: http://wiki.metalforge.net/doku.php/crossfire_compile_guide?rev=1308515866
New Revision: http://wiki.metalforge.net/doku.php/crossfire_compile_guide

-- 
This mail was generated by DokuWiki at
http://wiki.metalforge.net/



More information about the crossfire-wiki mailing list