On 2013-04-14 11:56, Eli Dayan wrote:
> 
> Some of you might remember me from several years ago.  

Yes, I remember we had correspondence years ago regarding builds.

>I used to build 
> gnubg on SPARC.  I have since moved back to x86 and am currently running 
> Linux Mint 12.0 with XFCE.  I did an apt-get update today, and 
> afterwards, gnubg would not run, throwing the following error:
>

First of all, was there any problem of this nature before the upgrade
(Was GNUBG working properly)? Are you using a roll your own build or a
version from the mint repository? If you are using it from repository
can you let me know the output of this command:

dpkg-query -l gnubg

This will give me the version number. If you are building from source,
was it using the latest CVS head? If you didn't build from source and
wish to know how to roll your own on Linux Mint (Which is Debian based)
the instructions included below should help.

> This is free software, and you are welcome to redistribute it under 
> certain conditions; type `show copying' for details.
> (No game) The program 'gnubg' received an X Window System error.
> This probably reflects a bug in the program.
> The error was 'BadWindow (invalid Window parameter)'.
>    (Details: serial 328 error_code 3 request_code 137 minor_code 4)
>    (Note to programmers: normally, X errors are reported asynchronously;
>     that is, you will receive the error a while after causing it.
>     To debug your program, run it with the --sync command line
>     option to change this behavior. You can then get a meaningful
>     backtrace from your debugger if you break on the gdk_x_error() 
> function.)
> 

Seems like an XWindows issue, yes. Or Xwindows/Video driver problem.

> Note I would try to fix the problem myself, but I know zero when it 
> comes to programming for X.  I have gotten older trees to run, but 
> without 3D, despite GTKGLEXT being detected.  Perhaps somebody knows 
> what's going on here.  Thanks in advance for any and all help.
> 

Can you try these steps to do a build:


This applies specifically to Debian based systems, although the portion
starting from creating the build directory should apply in most *nix
environments.

First one must get all the pre-requisites to build GNUBG.  If using
Ubuntu/Kubuntu or other Ubuntu derivatives issue this command (You will
be prompted for the root password)

sudo apt-get build-dep gnubg
sudo apt-get install cvs

On other Debian systems where sudo usage isn't the default usage
pattern, you have to log in as root first OR issue the command:
su -                        (you will be prompted for the root password)

then:

apt-get build-dep gnubg
apt-get install cvs

Once you have all the build dependencies you can build as a normal
unprivileged user or root. To do so create a directory to perform builds
under. For instance to build in your home account under a directory
called "builds" you can issue this command:

cd ~
mkdir builds
cd builds

Once you change into the "builds" (cd builds) directory you want to pull
out all the latest code from the CVS repository. That can easily be
accomplished with this task:

cvs -z3 -d:pserver:anonym...@cvs.savannah.gnu.org:/sources/gnubg co gnubg

It may take a little while to take out all the latest code (depending on
connection speed). Once completed you will now see that a new
subdirectory exists called "gnubg"

change into the gnubg subdirectory with:

cd gnubg

Okay, we are now ready to setup the build environment. First thing after
pulling files out of CVS is to issue this command:

./autogen.sh

This command only really needs to be done after you have just pulled
from CVS. Next we need to configure GNUBG to build on our system. We do
so with this command:

CFLAGS="-O3" ./configure

This command has recently been defaulted to build thread-enabled code
(allow multiple processors to be used by GNUBG), should auto detect
SSE/SSE2 now, and if you did the apt-get's above all the libraries
needed for 3D Board Support should also enable 3D support by default. In
the past ./configure usually required other parameters. The CFLAGS bit
is optional but this uses more aggressive optimizations. You can
configure with standard settings (if you so desire - although i
recommend the version above) with:

./configure

Issuing configure will cause a bunch of lines to fly past, and usually
the last line on a successful configure will be "config.status:
executing default-1 commands"

Okay now you can make the code with the configured environment:

make

If there are no errors it should spend time building the bearoff
databases the first time things are made with "make". Okay, well one
last step. You can install a successful build with this (you will need
root privs for this to be successful) that cna be used by all users on
the system:

If using Ubuntu/Kubuntu or other Ubuntu derivatives issue this command
(You may be prompted for the root password)

sudo make install

On other Debian systems where sudo usage isn't the default usage
pattern, you have to log in as root first OR issue the command:
su -                        (you will be prompted for the root password)

then

make install

Okay, a normal ./configure process puts GNUBG under /usr/local . This
means the GNUBG executable is  /usr/local/bin/gnubg . From the command
line you can issue:

/usr/local/bin/gnubg

The /usr/local directory will not interfere with other Debian software.
So this will not overwrite the Ubuntu/Kubuntu/Debian version that is
installed by apt/synaptic or aptitude. You can create a short cut on
your desktop that launches with this command:

/usr/local/bin/gnubg -w

The "-w" is usually important when running from the desktop so that it
suppresses the terminal output. Failure to do this with desktop/menu
shortcuts can lead to GNUBG not loading properly.

If people run into problems I can always be contacted directly at
mpe...@capp-sysware.com for assistance.

-- 
Michael Petch
GNU Backgammon Developer
OpenPGP FingerPrint=D81C 6A0D 987E 7DA5 3219 6715 466A 2ACE 5CAE 3304

_______________________________________________
Bug-gnubg mailing list
Bug-gnubg@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-gnubg

Reply via email to