XBoard / WinBoard 4.6.0 released

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: XBoard / WinBoard 4.6.0 released

Post by Max »

zullil wrote:
zullil wrote: For those who can't build and install on their own, a good option is to use a port management system like MacPorts. (Unfortunately, their version of XBoard is 4.4.3; I've put in an update request.)
MacPorts version of XBoard updated to 4.6.0.
MacPorts is great, but on my system it needs so much additional software to build xboard 4.6.0 ... this takes ages.

$ sudo port install xboard
---> Computing dependencies for xboard
---> Dependencies to be installed: xorg-libXaw groff ghostscript jbig2dec libpaper xorg-libXt netpbm jasper psutils xorg-libXmu xpm

Past xboard versions compiled and worked on the Mac without any of these tools, using the traditional configure & make.

All the best,
Max
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: XBoard / WinBoard 4.6.0 released

Post by hgm »

Michel wrote:I can't figure out a way to clear the board in the new "Edit Position" mode.

Also I must say that sliding selection is not very comfortable with a trackpad (perhaps with a mouse it is, I don't know).

I wonder if there is a way to reenable the original context menu which I found very convenient (and fast).
Clearing the board can be done by clicking the clock that is already selected. (Clicking the other clock changes the side to move.)

-pieceMenu true

should persistently re-enable the old piece menu.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: XBoard / WinBoard 4.6.0 released

Post by hgm »

Max wrote:Past xboard versions compiled and worked on the Mac without any of these tools, using the traditional configure & make.
XBoard 4.6.0 is not really different from earlier versions, as far as the X11 front-end goes. So I don't undrstand why " ./configure; make" should not work. Maybe something has been changed in the makefile, for creating the docs. Arun does the makefile, I know little of that. But it is a bit suspect that 'ghostscript' and 'psutils' would be needed. They are certainly not needed for building the XBoard binary... Many of the other package names I don't recognize at all. Libraries like X11, Xt and Xaw have always been needed (but perhaps MacPorts takes them from a different source).
Michel
Posts: 2272
Joined: Mon Sep 29, 2008 1:50 am

Re: XBoard / WinBoard 4.6.0 released

Post by Michel »

Clearing the board can be done by clicking the clock that is already selected. (Clicking the other clock changes the side to move.)
Ok. I guess that is not really discoverable!
-pieceMenu true

should persistently re-enable the old piece menu.
That's what I did and it seems to work. I must say I don't really see why the switch to sliding selection was necessary or desirable. A context menu seems to be a lot more flexible for presenting things to the user.
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: XBoard / WinBoard 4.6.0 released

Post by zullil »

Max wrote:
zullil wrote:
zullil wrote: For those who can't build and install on their own, a good option is to use a port management system like MacPorts. (Unfortunately, their version of XBoard is 4.4.3; I've put in an update request.)
MacPorts version of XBoard updated to 4.6.0.
MacPorts is great, but on my system it needs so much additional software to build xboard 4.6.0 ... this takes ages.

$ sudo port install xboard
---> Computing dependencies for xboard
---> Dependencies to be installed: xorg-libXaw groff ghostscript jbig2dec libpaper xorg-libXt netpbm jasper psutils xorg-libXmu xpm

Past xboard versions compiled and worked on the Mac without any of these tools, using the traditional configure & make.

All the best,
Max
This version can be easily built on Mac OS X using configure and make. But for those who don't know how to do such things, I requested that MacPorts update their XBoard package to 4.6, which they promptly did.

You are correct about the dependencies, though many of these should exist as prebuilt archives with no compiling needed.

Direct dependencies:

Code: Select all

~] port echo depof:xboard
libtool                         
xorg-libXaw                     
Recursive dependencies:

Code: Select all

~] port echo rdepof:xboard
apr                             
apr-util                        
autoconf                        
automake                        
bzip2                           
curl-ca-bundle                  
cyrus-sasl2                     
db46                            
expat                           
fontconfig                      
freetype                        
gdbm                            
gettext                         
ghostscript                     
glib2                           
gperf                           
groff                           
help2man                        
jasper                          
jbig2dec                        
jbigkit                         
jpeg                            
lcms2                           
libedit                         
libffi                          
libiconv                        
libidn                          
libpaper                        
libpng                          
libtool                         
libxml2                         
m4                              
ncurses                         
ncursesw                        
neon                            
netpbm                          
openssl                         
p5.12-locale-gettext            
perl5                           
perl5.12                        
pkgconfig                       
psutils                         
python27                        
python_select                   
serf1                           
sqlite3                         
subversion                      
texinfo                         
tiff                            
unzip                           
xorg-bigreqsproto               
xorg-inputproto                 
xorg-kbproto                    
xorg-libice                     
xorg-libpthread-stubs           
xorg-libsm                      
xorg-libX11                     
xorg-libXau                     
xorg-libXaw                     
xorg-libxcb                     
xorg-libXdmcp                   
xorg-libXext                    
xorg-libXmu                     
xorg-libXt                      
xorg-util-macros                
xorg-xcb-proto                  
xorg-xcmiscproto                
xorg-xextproto                  
xorg-xf86bigfontproto           
xorg-xproto                     
xorg-xtrans                     
xpm                             
xz                              
zlib                            
stevenaaus
Posts: 608
Joined: Wed Oct 13, 2010 9:44 am
Location: Australia

Re: XBoard / WinBoard 4.6.0 released

Post by stevenaaus »

hgm wrote:
stevenaaus wrote:Just trying to learn how to play crazyhouse, i found an easy segfault.

Open Engine->LoadNewEngine, type anything in an entry box and double-click the entry box.

(And then the "No such directory" error dialog won't let me click "ok" for a time interval - though perhaps this is by design).
I am trying to reproduce this, but so far no luck. Which entry box are you typing in? The engine command?
The behaviour seems the same for any entry box anywhere on my old box.

Code: Select all

Core was generated by `xboard'.
Program terminated with signal 6, Aborted.
#0  0xb7749424 in __kernel_vsyscall ()
(gdb) bt
#0  0xb7749424 in __kernel_vsyscall ()
#1  0x00c26fa0 in raise () from /lib/libc.so.6
#2  0x00c288b1 in abort () from /lib/libc.so.6
#3  0x00c5debb in __libc_message () from /lib/libc.so.6
#4  0x00ce2ce1 in __chk_fail () from /lib/libc.so.6
#5  0x00ce34bc in __wctomb_chk () from /lib/libc.so.6
#6  0x4bc9b227 in _Xaw_iswalnum () from /usr/lib/libXaw.so.7
#7  0x4bc6e128 in ?? () from /usr/lib/libXaw.so.7
#8  0x4bc85f26 in XawTextSourceScan () from /usr/lib/libXaw.so.7
#9  0x4bc82b70 in _XawTextAlterSelection () from /usr/lib/libXaw.so.7
#10 0x4bc900e3 in ?? () from /usr/lib/libXaw.so.7
#11 0x022f3371 in ?? () from /usr/lib/libXt.so.6
#12 0x022f374a in ?? () from /usr/lib/libXt.so.6
#13 0x022f3d44 in _XtTranslateEvent () from /usr/lib/libXt.so.6
#14 0x022cb615 in XtDispatchEventToWidget () from /usr/lib/libXt.so.6
#15 0x022cbd9a in ?? () from /usr/lib/libXt.so.6
#16 0x022cac77 in XtDispatchEvent () from /usr/lib/libXt.so.6
#17 0x022cae2c in XtAppMainLoop () from /usr/lib/libXt.so.6
#18 0x080969e8 in main ()
Double-clicking a text widget has no effect for me other than that it gets selected and a cursor appears in it (or if there is text in it, the text gets selected). As far as I could figure out double-clicking is a concept unknown to X11 anyway; it just counts as two independent single clicks. Do you click an empty widget, or was there text in it, and if so, do you click on the text or behind it?
Double click on any section of blank or text is the same. Two single clicks do not suffice. They must be a double click (ie close together).
How can it be that you get an error popup after a segfault? The segfault should immediately terminate the process.
Of course. I restart it and don't double click this time. Fvwm2 is the same.
Hmmm - i tried to test inside Linux Mint, but too tough to apt-get makeinfo from inside a chroot, so i'll have to try another day.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: XBoard / WinBoard 4.6.0 released

Post by hgm »

Michel wrote:I must say I don't really see why the switch to sliding selection was necessary or desirable. A context menu seems to be a lot more flexible for presenting things to the user.
The context menu does not contain all pieces. In addition it requires the names of the pieces to be presented in text form, which is a pain, because the same piece can be known under different names. (And translation is required.) The sweep-selction also is an automatic guard against setting up pieces that do not belong in the variant.

I guess it would indeed be better to print the message "click clock to clear board or set side" in the message field when editing.

It seems I forgot to mention this change in the 4.6.0 What's New file. :oops:
Last edited by hgm on Tue Mar 13, 2012 11:19 am, edited 1 time in total.
stevenaaus
Posts: 608
Joined: Wed Oct 13, 2010 9:44 am
Location: Australia

Re: XBoard / WinBoard 4.6.0 released

Post by stevenaaus »

Linux Mint 10 requires makeinfo too.

Code: Select all

#./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking whether gcc and cc understand -c and -o together... yes
checking how to run the C preprocessor... gcc -E
checking for library containing strerror... none required
checking whether NLS is requested... yes
checking for msgfmt... no
checking for gmsgfmt... :
checking for xgettext... no
checking for msgmerge... no
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking for remsh... no
checking for rsh... rsh
checking for makeinfo... no
Please install "makeinfo"
Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: XBoard / WinBoard 4.6.0 released

Post by Max »

zullil wrote:Recursive dependencies:

Code: Select all

~] port echo rdepof:xboard
apr                             
apr-util                        
autoconf                        
automake                        
bzip2                           
curl-ca-bundle                  
cyrus-sasl2                     
db46                            
expat                           
fontconfig                      
freetype                        
gdbm                            
gettext                         
ghostscript                     
glib2                           
gperf                           
groff                           
help2man                        
jasper                          
jbig2dec                        
jbigkit                         
jpeg                            
lcms2                           
libedit                         
libffi                          
libiconv                        
libidn                          
libpaper                        
libpng                          
libtool                         
libxml2                         
m4                              
ncurses                         
ncursesw                        
neon                            
netpbm                          
openssl                         
p5.12-locale-gettext            
perl5                           
perl5.12                        
pkgconfig                       
psutils                         
python27                        
python_select                   
serf1                           
sqlite3                         
subversion                      
texinfo                         
tiff                            
unzip                           
xorg-bigreqsproto               
xorg-inputproto                 
xorg-kbproto                    
xorg-libice                     
xorg-libpthread-stubs           
xorg-libsm                      
xorg-libX11                     
xorg-libXau                     
xorg-libXaw                     
xorg-libxcb                     
xorg-libXdmcp                   
xorg-libXext                    
xorg-libXmu                     
xorg-libXt                      
xorg-util-macros                
xorg-xcb-proto                  
xorg-xcmiscproto                
xorg-xextproto                  
xorg-xf86bigfontproto           
xorg-xproto                     
xorg-xtrans                     
xpm                             
xz                              
zlib                            
Wow ... was pretty lucky needing only 11 of them to install. :wink:

Max
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: XBoard / WinBoard 4.6.0 released

Post by hgm »

stevenaaus wrote:The behaviour seems the same for any entry box anywhere on my old box.

Code: Select all

Core was generated by `xboard'.
Program terminated with signal 6, Aborted.
#0  0xb7749424 in __kernel_vsyscall ()
(gdb) bt
#0  0xb7749424 in __kernel_vsyscall ()
#1  0x00c26fa0 in raise () from /lib/libc.so.6
#2  0x00c288b1 in abort () from /lib/libc.so.6
#3  0x00c5debb in __libc_message () from /lib/libc.so.6
#4  0x00ce2ce1 in __chk_fail () from /lib/libc.so.6
#5  0x00ce34bc in __wctomb_chk () from /lib/libc.so.6
#6  0x4bc9b227 in _Xaw_iswalnum () from /usr/lib/libXaw.so.7
#7  0x4bc6e128 in ?? () from /usr/lib/libXaw.so.7
#8  0x4bc85f26 in XawTextSourceScan () from /usr/lib/libXaw.so.7
#9  0x4bc82b70 in _XawTextAlterSelection () from /usr/lib/libXaw.so.7
#10 0x4bc900e3 in ?? () from /usr/lib/libXaw.so.7
#11 0x022f3371 in ?? () from /usr/lib/libXt.so.6
#12 0x022f374a in ?? () from /usr/lib/libXt.so.6
#13 0x022f3d44 in _XtTranslateEvent () from /usr/lib/libXt.so.6
#14 0x022cb615 in XtDispatchEventToWidget () from /usr/lib/libXt.so.6
#15 0x022cbd9a in ?? () from /usr/lib/libXt.so.6
#16 0x022cac77 in XtDispatchEvent () from /usr/lib/libXt.so.6
#17 0x022cae2c in XtAppMainLoop () from /usr/lib/libXt.so.6
#18 0x080969e8 in main ()
Double click on any section of blank or text is the same. Two single clicks do not suffice. They must be a double click (ie close together).
The calling stack is all Xlib stuff, I don't see any routine written by us in there. But you are in XtTranslateEvent, which probably accesses a string with translations provided by us (in xoptions.c):

Code: Select all

static char *oneLiner  = "<Key>Return&#58;	redraw-display&#40;)\n";
This should only do something on a key press, not on a mouse click, though. There is a small chance that the routine gets upset because there is a tab after "Return:", and no space before the '\n'. Could you replace that tab by a pace, and add the space before '\n', and see if the error persists?
Hmmm - i tried to test inside Linux Mint, but too tough to apt-get makeinfo from inside a chroot, so i'll have to try another day.
Indeed texinfo has always been needed to build XBoard, because the sources for the manual file are in .texi format.