Main
Date: 02 Aug 2006 04:49:19
From: Dave (from the UK)
Subject: UNIX chess interfaces
How do the various winboard compatible front ends compare for UNIX?

Xboard is rather old looking, but does seem to work quite well, although
there is no seek graph or other similar things that are useful for ICC.

I've build eboard today on my Solaris box, but whilst the pieces look
reasonably nice, it is not 100% stable on my box.


teal /export/home/drkirkby/eboard-0.9.5 % ./eboard
Segmentation fault

More than once it has locked up or given a segmentation fault.

What is Knights like? It runs only on KDE which my Solaris box does not
have installed at the minute, although I can download and install KDE,
but it is not trivial to do so. I use Sun's desktop normally, which is
based on Gnome.

Are there any for UNIX I have missed?

---
Dave (from the UK)

Please note my email address changes periodically to avoid spam.
It is always of the form: [email protected]
Hitting reply will work for a few months only - later set it manually.

http://witm.sourceforge.net/ (Web based Mathematica front end)




 
Date: 22 Aug 2006 12:00:03
From: Anand Nene
Subject: Re: UNIX chess interfaces
Dave (from the UK) wrote:
> What is Knights like?

Its good, quite mature and stable as well. Though from the
website it may feel that the development may be frozen, it
is not. The author is also very reachable!

IMHO, its a very good replacement for XBoard. Doesn't hurt
at all to play in some slick UI? Though the conventional
community may throw me out for making the above statement :P

You can also try:
http://slibo.sourceforge.net/

Another interface using Qt, but crashes/freezes on me.

--
__ _ The Lotus 78 (John Players Special)
[ ]_.--'_'----._ Notice the greater rake on the main bodywork
`( o )_Anand__(o)Z > and the extension through to the rear wing.


 
Date: 02 Aug 2006 11:44:14
From: David Richerby
Subject: Re: UNIX chess interfaces
Dave (from the UK) <[email protected] > wrote:
> I've build eboard today on my Solaris box, but whilst the pieces look
> reasonably nice, it is not 100% stable on my box.

I ran eboard quote extensively on an x86 Linux system and never had
any stability problems. Does building with GCC and linking against
the GNU C++ libraries (rather than Solaris's) help?

(And ta for trimming the sig.)


Dave.

--
David Richerby Unholy Revolting Painting (TM): it's
www.chiark.greenend.org.uk/~davidr/ like a Renaissance masterpiece but
it'll turn your stomach and it's also
a crime against nature!


  
Date: 03 Aug 2006 23:50:41
From: Dave (from the UK)
Subject: Re: UNIX chess interfaces
David Richerby wrote:
> Dave (from the UK) <[email protected]> wrote:
>
>>I've build eboard today on my Solaris box, but whilst the pieces look
>>reasonably nice, it is not 100% stable on my box.
>
>
> I ran eboard quote extensively on an x86 Linux system and never had
> any stability problems. Does building with GCC and linking against
> the GNU C++ libraries (rather than Solaris's) help?

I seem to have cured it (at least I think so).


The configure script compiles with -O6. I'm not sure if gcc supports
-O6, but if it does it would be a very aggressive optimization, which
might explain it. Removing that stops it crashing as much.

I removed the -O6 and put -g in its place to compile with no
optimization, but under the debugger. It seems to me there is no error
checking done. For example, playing against the computer with an engine
which does not exist causes it to crash. This is with a generic engine,
which I called foobar, but foobar does not exist.

(gdb) run
Starting program: /export/home/drkirkby/eboard-0.9.5/eboard
warning: Lowest section in /usr/lib/libdl.so.1 is .dynamic at 00000094

Program received signal SIGSEGV, Segmentation fault.
0x000f88e8 in XBoardProtocol::initEngine (this=0x4bb680) at
proto_xboard.cc:471
471 global.network- >writeLine("nopost");
(gdb) list
466
467 void XBoardProtocol::initEngine() {
468 char z[256];
469 createGame();
470 // xboard/protover already sent in open() call
471 global.network- >writeLine("nopost");
472
473 if (ThinkAlways)
474 global.network- >writeLine("hard");
475 else


Trying the sjeng engine, (which again I don't have), again causes a crash.

Program received signal SIGSEGV, Segmentation fault.
0x000fc54c in SjengProtocol::initEngine (this=0x4bc2e8) at
proto_xboard.cc:1090
1090 global.network- >writeLine("xboard");
(gdb) list
1085 }
1086
1087 void SjengProtocol::initEngine() {
1088 char z[32];
1089 createGame();
1090 global.network- >writeLine("xboard");
1091 global.network- >writeLine("protover 2");
1092 global.network- >writeLine("nopost");
1093
1094 if (ThinkAlways)


Not knowing C++, I don't really know what is going on, but it looks like
when it fails to initialise an engine it crashes. There does not seem to
be sufficient error checking. Does that happen on Linux ??

But it seems a bit more stable now there is not so much compiler
optimisation.
--
Dave (from the UK)

Please note my email address changes periodically to avoid spam.
It is always of the form: [email protected]
Hitting reply will work for a few months only - later set it manually.

http://witm.sourceforge.net/ (Web based Mathematica front end)


  
Date: 02 Aug 2006 12:39:27
From: Dave (from the UK)
Subject: Re: UNIX chess interfaces
David Richerby wrote:
> Dave (from the UK) <[email protected]> wrote:
>
>>I've build eboard today on my Solaris box, but whilst the pieces look
>>reasonably nice, it is not 100% stable on my box.
>
>
> I ran eboard quote extensively on an x86 Linux system and never had
> any stability problems.

I've noticed a lot of so-called UNIX programs are only really tested on
Linux. If there is a bug it will be noticed much quicker on Linux. And
the developer rarely has access to a Solaris system - although now there
is Solaris x86 and Solaris x64, both of which are free downloads, this
might change a bit. But my box has SPARC processors in it.

Recently I tried using Suns compiler to compile something. I set CFLAGS
myself. The configure script worked out I was not using gcc, but then
added in gcc-specific compiler flags like -Wall. Assumptions about Linux
are very common. It is not uncommon for a program that is supposedly
works on Solaris to fail when it can't find /usr/include/foobar_linux.h

> Does building with GCC and linking against
> the GNU C++ libraries (rather than Solaris's) help?

I built eboard using gcc 3.4.3. gcc 4.1.1 will not build it (see below)
and neither will Sun's compiler.

RESULTS from gcc 4.1.1
teal /export/home/drkirkby/eboard-0.9.5 % gmake
g++ -O6 -I/usr/sfw/include/gtk-1.2 -I/usr/sfw/include/glib-1.2
-I/usr/sfw/lib/glib/include -I/opt/sfw/include -I/usr/openwin/include -c
board.cc -o board.o
board.cc: In constructor 'Board::Board()':
board.cc:114: error: 'board_expose_event' was not declared in this scope
board.cc:116: error: 'board_configure_event' was not declared in this scope
board.cc:118: error: 'board_button_press_event' was not declared in this
scope
board.cc:121: error: 'board_button_release_event' was not declared in
this scop

I have gcc 3.3.4 too, but have not tried that.

This is what libraries it is presently using, after I compiled with gcc
3.4.3

Bits under /opt/sfw and /usr/sfw are open-source bits normally.

teal /export/home/drkirkby/eboard-0.9.5 % ldd ./eboard
libgdk_imlib.so.1 = > /opt/sfw/lib/libgdk_imlib.so.1
libgtk-1.2.so.0 = > /usr/sfw/lib/libgtk-1.2.so.0
libgdk-1.2.so.0 = > /usr/sfw/lib/libgdk-1.2.so.0
libgmodule-1.2.so.0 = > /usr/sfw/lib/libgmodule-1.2.so.0
libglib-1.2.so.0 = > /usr/sfw/lib/libglib-1.2.so.0
libXext.so.0 = > /usr/lib/libXext.so.0
libX11.so.4 = > /usr/lib/libX11.so.4
libsocket.so.1 = > /usr/lib/libsocket.so.1
libnsl.so.1 = > /usr/lib/libnsl.so.1
libstdc++.so.6 = > /usr/sfw/lib/libstdc++.so.6
libm.so.2 = > /usr/lib/libm.so.2
libgcc_s.so.1 = > /usr/sfw/lib/libgcc_s.so.1
libc.so.1 = > /usr/lib/libc.so.1
libdl.so.1 = > /usr/lib/libdl.so.1
libmp.so.2 = > /usr/lib/libmp.so.2
libmd5.so.1 = > /usr/lib/libmd5.so.1
libscf.so.1 = > /usr/lib/libscf.so.1
libdoor.so.1 = > /usr/lib/libdoor.so.1
libuutil.so.1 = > /usr/lib/libuutil.so.1
/platform/SUNW,Ultra-80/lib/libc_psr.so.1
/platform/SUNW,Ultra-80/lib/libmd5_psr.so.1


> (And ta for trimming the sig.)

It's still over the 4 lines, but I think it will have to do.

--
Dave (from the UK)

Please note my email address changes periodically to avoid spam.
It is always of the form: [email protected]
Hitting reply will work for a few months only - later set it manually.

http://witm.sourceforge.net/ (Web based Mathematica front end)


   
Date: 02 Aug 2006 13:23:17
From: Ari Makela
Subject: Re: UNIX chess interfaces
["Followup-To:" header set to rec.games.chess.computer.]
On 2006-08-02, Dave (from the UK) <[email protected] > wrote:

> I've noticed a lot of so-called UNIX programs are only really tested on
> Linux. If there is a bug it will be noticed much quicker on Linux.

A vast majority of unix-type systems are linux-systems especially when
desktops are concerned.

> And
> the developer rarely has access to a Solaris system - although now there
> is Solaris x86 and Solaris x64, both of which are free downloads, this
> might change a bit. But my box has SPARC processors in it.

I don't really believe it will really change on things on the desktop.

> I built eboard using gcc 3.4.3. gcc 4.1.1 will not build it (see below)
> and neither will Sun's compiler.

I really wonder whether gcc 4.1.1 would compile eboard on linux either.
I'm a complete novice when C++ is concerned but from these error
messages

> RESULTS from gcc 4.1.1
> teal /export/home/drkirkby/eboard-0.9.5 % gmake
> g++ -O6 -I/usr/sfw/include/gtk-1.2 -I/usr/sfw/include/glib-1.2
> -I/usr/sfw/lib/glib/include -I/opt/sfw/include -I/usr/openwin/include -c
> board.cc -o board.o
> board.cc: In constructor 'Board::Board()':
> board.cc:114: error: 'board_expose_event' was not declared in this scope
> board.cc:116: error: 'board_configure_event' was not declared in this scope
> board.cc:118: error: 'board_button_press_event' was not declared in this
> scope
> board.cc:121: error: 'board_button_release_event' was not declared in
> this scop

I'd guess that the problem is with the eboard source.

--
Ari Makela late autumn -
[email protected] a single chair waiting
http://arska.org/hauva/ for someone yet to come
-- Arima Akito


    
Date: 03 Aug 2006 22:15:32
From: Dave (from the UK)
Subject: Re: UNIX chess interfaces
Ari Makela wrote:
> ["Followup-To:" header set to rec.games.chess.computer.]
> On 2006-08-02, Dave (from the UK) <[email protected]> wrote:
>
>
>>I've noticed a lot of so-called UNIX programs are only really tested on
>>Linux. If there is a bug it will be noticed much quicker on Linux.
>
>
> A vast majority of unix-type systems are linux-systems especially when
> desktops are concerned.

I'm not sure what you mean there. UNIX existed long before Linux.

>>And
>>the developer rarely has access to a Solaris system - although now there
>>is Solaris x86 and Solaris x64, both of which are free downloads, this
>>might change a bit. But my box has SPARC processors in it.
>
>
> I don't really believe it will really change on things on the desktop.

Bug that show up on one platform don't always on another. I've seen bugs
on 4 processor Solaris machines that does not show up on 2 processor
Linux boxes. I've had problems running a program on a Cray where
sizeof(short)==8. Over the years I've found that testing on multiple
platfoms is a good way of getting bugs out of code.

>
>>I built eboard using gcc 3.4.3. gcc 4.1.1 will not build it (see below)
>>and neither will Sun's compiler.
>
>
> I really wonder whether gcc 4.1.1 would compile eboard on linux either.
> I'm a complete novice when C++ is concerned but from these error
> messages

I suspect gcc 4.1.1 is more strict about sticking to the C++ standard.
So older "sloppy" code will not compile. I may be wrong of course, but
it does look that way to me.

>>RESULTS from gcc 4.1.1
>>teal /export/home/drkirkby/eboard-0.9.5 % gmake
>>g++ -O6 -I/usr/sfw/include/gtk-1.2 -I/usr/sfw/include/glib-1.2
>>-I/usr/sfw/lib/glib/include -I/opt/sfw/include -I/usr/openwin/include -c
>>board.cc -o board.o
>>board.cc: In constructor 'Board::Board()':
>>board.cc:114: error: 'board_expose_event' was not declared in this scope
>>board.cc:116: error: 'board_configure_event' was not declared in this scope
>>board.cc:118: error: 'board_button_press_event' was not declared in this
>>scope
>>board.cc:121: error: 'board_button_release_event' was not declared in
>>this scop
>
>
> I'd guess that the problem is with the eboard source.

Yes. But I can circumvent that by compiling with an older gcc. But it is
definately not stable. I am not a C++ programmer, only C. So I'm not
sure I could debug it myself. But I might try compiling with -g and
seeing if I can do anything useful with a core dump, or run it under the
debugger.

But the eboard project seems to have stagnated. There has been no
updates for a couple of years at least.

--
Dave (from the UK)

Please note my email address changes periodically to avoid spam.
It is always of the form: [email protected]
Hitting reply will work for a few months only - later set it manually.

http://witm.sourceforge.net/ (Web based Mathematica front end)


     
Date: 04 Aug 2006 09:20:06
From: David Richerby
Subject: Re: UNIX chess interfaces
Dave (from the UK) <[email protected] > wrote:
> Ari Makela wrote:
>> A vast majority of unix-type systems are linux-systems especially when
>> desktops are concerned.
>
> I'm not sure what you mean there.

The claim is that, if you count the number of machines using each
unix-like operating system, by far the greatest number will be running
one of the various Linux distributions. This seems very likely to be
true.


> UNIX existed long before Linux.

This is not relevant.


> But the eboard project seems to have stagnated. There has been no
> updates for a couple of years at least.

The author, Felipe Bergo, says he's concentrating on his business at
the moment. You could try mailing him (bergo at seul dot org) or
chatting to him on FICS (username Pulga; you can log in as `guest' if
you don't have an account).


Dave.

--
David Richerby Chocolate Shack (TM): it's like a
www.chiark.greenend.org.uk/~davidr/ house in the woods that's made of
chocolate!


      
Date: 04 Aug 2006 10:28:36
From: Dave (from the UK)
Subject: Re: UNIX chess interfaces
David Richerby wrote:
> Dave (from the UK) <[email protected]> wrote:
>
>>Ari Makela wrote:
>>
>>>A vast majority of unix-type systems are linux-systems especially when
>>>desktops are concerned.
>>
>>I'm not sure what you mean there.
>
>
> The claim is that, if you count the number of machines using each
> unix-like operating system, by far the greatest number will be running
> one of the various Linux distributions. This seems very likely to be
> true.
>

Yes, I agree. I did not previously understand you.

It's just a shame more people don't test their code on non-Linux
platforms. Testing on just one, *without* using gcc, will normally show
up 95% of problems.

On sourceforge at least there are 'compile farms' where you can test
compilation. For graphical programs it would be difficult to test them
running due to bandwidth limitations. There is also the HP testdrive
site. I've tested some of my software on a Cray - there is one old
public access one around.


>>But the eboard project seems to have stagnated. There has been no
>>updates for a couple of years at least.
>
>
> The author, Felipe Bergo, says he's concentrating on his business at
> the moment. You could try mailing him (bergo at seul dot org) or
> chatting to him on FICS (username Pulga; you can log in as `guest' if
> you don't have an account).

Cheers. I sent an email to his sourceforge account, but I received no
reply. I must admit I've never had any from my account, so I'm not sure
it even works! I'll try at the address you give.


But I seem to have it working now, having removed all the optimisation.
Even -O seems to screw up the binary. But one seems to need a compiler
flag, as removing the -O6 without adding something in screws it up. So I
added the -v flag !!! Now it prints a lot of info while compiling, but
at least it does now compile.

--
Dave (from the UK)

Please note my email address changes periodically to avoid spam.
It is always of the form: [email protected]
Hitting reply will work for a few months only - later set it manually.

http://witm.sourceforge.net/ (Web based Mathematica front end)


       
Date: 04 Aug 2006 11:21:03
From: David Richerby
Subject: Re: UNIX chess interfaces
Dave (from the UK) <[email protected] > wrote:
> But I seem to have it working now, having removed all the
> optimisation. Even -O seems to screw up the binary.

That's almost certainly a bug in eboard, then. -O should only perform
optimizations that are guaranteed safe...


> But one seems to need a compiler flag, as removing the -O6 without
> adding something in screws it up.

... and putting -O6 in a default makefile is, frankly, crazy.


> So I added the -v flag !!! Now it prints a lot of info while
> compiling, but at least it does now compile.

Wheeeeee!


Dave (also originally from the UK).

--
David Richerby Broken Unholy Vomit (TM): it's like
www.chiark.greenend.org.uk/~davidr/ a pile of puke but it's also a crime
against nature and it doesn't work!