GNU chess, XBoard and ICS

small "HOWTO" for the best free chess playing environment available

Note: This is not official LDP HOWTO, I just borrowed this handy name.

XBoard image


GNU chess is free chess playing environment, licensed under GPL. It comes with a set of useful tools. X Windows GUI (look at picture) and WWW playing interface were developed. WWW page SkyChess is an example of GNU chess engine with WWW access.
I want to cover several topics in this paper. First, we examine compiling and running of the chess engine. Useful Makefile modification tip is presented.
Chess engine has just a textual interface. Nifty windowind interface is a must be for today's programs - XBoard is the right choice.
Last, but not least, you are invited to play chess online on Internet Chess Server (ICS). XBoard can help you even in this case.
This paper doesn't cover WWW or ICS interface for GNU chess.

Uploading GNU chess and XBoard

Before you start uploading huge GNU chess distribution, take at your Linux distribution. Some distributions (Slackware) contain GNU chess package, including precompiled binaries (Even in case you have this package on your disk, have a look at compile tips. You may want to configure chess engine differently then package builders.).

GNU chess and XBoard are part of GNU project. Today (15.3.1996), current versions are:

You should find these packages on servers, maintaining GNU software. Czech users may want to use mirror on Sunsite, Czech Republic. Files gnuchess-4.0.pl75.tar.gz and xboard-3.4.pl0.tar.gz are the right ones.

Compiling GNU chess and XBoard

Uncompress the archives. Distribution directories are created. We will start compiling now.
Change directory to gnuchess-4.0.pl75/src and run ./configure. This smart script creates Makefile, suited for your machine and OS. Under Linux, this step is usually OK.
Now we are ready to hand edit Makefile. Default values are not so bad, but these changes may be useful:

Default values for vttblsz and ETABLE mean memory usage 7.4 MB. This can be pretty much on some machines, so customization can prove crucial (These tables act as a computation accelerator - fast access to them is needed. To be of help, tables must fit in physical memory. If intensive swapping occurs, reduce table sizes and recompile.)

XBoard compilation is straightforward - just
cd board-3.4.pl0/src;./configure;make.

Instalation is performed using make install. Check directories BINDIR and LIBDIR (variables in Makefile) to properly place generated files.

Using GNU Chess

After successful compilation and installation, you should have these files:

These files are placed according to BINDIR and LIBDIR. To play chess pleasantly, I recommend using XBoard. Following options apply to XBoard, some of them are meaningful for text interfaces as well.

Note: I am repeatedly faced with this problem - gnuchess exceeds time limit exactly at 40th move. So, to be honest, I don't claim time win in this situation. If you know solution, mail me.

ICS - Internet Chess Server

Internet Chess Server can be described as a virtual internet chess club. You can play chess games there, chat to oponents etc.
XBoard is an excellent client program for ICS. To use XBoard as an "Internet chessboard", just run
xboard -ics -icshost
You will be connected to European Internet chess server (before registration, you can use just a guest account ('help register' on server to learn registration info).
You can issue various commands. Here is a list of important ones (use 'help' command on server to learn more details):

List of Internet Chess Servers around the world

My favourite site is EICS. See you there !

Page maintained by Jan Stoklasa

Back to Linux Page