Skip to content

Linux Build

December 23, 2015

I published a minor update release today on Github. Most of the changes made were of interest to developers only. In particular, I have been experimenting with getting T3 up and running on Linux and the new release captures the changes made to achieve that. So T3 (alpha) is now running on Windows, Mac and Linux. But I need to emphasise that the Mac and Linux versions are still second class citizens. They are accessible only to developers, require fiddling around with development tools, and are incomplete and lacking polish. Of course T3 on Windows is also incomplete and lacking polish, just not to such a great extent!

There is just one small functional improvement since the last version. I fixed an embarrassing bug; Checking “Use clipboard as temporary database” in the database player view would crash the program. Naturally I discovered this bug in the classic fashion; Whilst giving someone a demo! (I think it was the first thing I did in the demo – he was a non-chess player who had just seen the new Bobby Fischer movie I was showing him how I could use my program to look at Fischer’s games).

As before, to try out this alpha release, download TarraschV3Alpha.zip from Github, unzip to a convenient directory and run Tarrasch.exe. If this doesn’t seem to work – try running Tarrasch.exe from a command line with command line parameter –log. This will show diagnostic messages that will help me understand what’s going wrong.

For the next few weeks I am going to stop fiddling with the program and instead “dogfood” it intensively. The New Zealand Chess Champs are coming up! If the program isn’t useful to me I am actually wasting my time so this will be an interesting exercise as I review where I am going with Tarrasch.

One thing I really need to do is make my Github repository more developer friendly – I’d like a very low frustration barrier to any developer who wants to hack on Tarrasch. This will be a priority in the new year.

In the meantime here are some outline notes on how to build T3 on Linux just in case there is anyone out there who is interested. Note that I used Ubuntu 14.04 LTS;

Stage 1: Download and install wxwidgets, for example

sudo apt-get update
sudo apt-get install libgtk2.0-dev
Download and uncompress wxwidgets 3.0.2 source tree from wxwidgets.org to directory ~/wxWidgets-3.0.2
cd ~/wxWidgets-3.0.2
mkdir build-gtk
cd build-gtk
../configure
make
sudo make install
sudo ldconfig
wx-config –version (should show 3.0.2)

Stage 2: Validate wxwidgets by building the minimal and richtext samples

cd samples/minimal
cp makefile.unx makefile
make
./minimal
cd ../../samples/richtext
cp makefile.unx makefile
make
./richtext

Stage 2b: You should skip this stage, basically my approach here was to hack on the richtext sample, progressively introducing Tarrasch source files to replace the simple richtext.cpp. You can go straight to Stage 3 instead.

Stage 3: Clone the Tarrasch github repository or grab the source code from the latest release. Note the new file “makefile” (not Makefile) which holds the wisdom I gleaned from Stage 2b. You should be able to go;

make
./tarrasch

One problem I noticed is that database creation, actually the last phase of database creation (position indexing) seems to be orders of magnitude slower on Linux than on Windows and Mac. Oh well, yet another problem to investigate in the new year.
Merry Christmas!
2 Comments leave one →
  1. Lloyd Standish permalink
    December 23, 2015 2:23 am

    Thanks very much for working on a Linux port of Tarrasch. I’ll be trying it out when I get some time. Good luck at the New Zealand Chess Championships!

    • December 26, 2015 9:42 pm

      Thanks Lloyd. I hope you see this very delayed (sorry) reply. I’m afraid Tarrasch under Wine (which I know you’ve tried successfully) is still more practical for now… But in the future….

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: