bug-gnubg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-gnubg] Mac OS/X and GTK without X11 (Using Quartz) - Roll your own


From: Michael Petch
Subject: [Bug-gnubg] Mac OS/X and GTK without X11 (Using Quartz) - Roll your own
Date: Mon, 04 Apr 2011 15:11:19 -0600
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9

To those rolling their own OS/X builds, this may be of interest:

On the weekend I spent some time seeing whether it would be possible to
get GNUBG to use GTK on OS/X without the need for the X11. I was
pleasantly surprised with the minimal effort that was needed to get
things to a 95% level.

The project I began looking at was http://gtk-osx.sourceforge.net/ .

I was able to build the 2D version of GNUBG without any difficulty. The
3D version is problematic but still usable despite some of the issues.
Unfortunately 3D support is lacking because the GTK-OSX project doesn't
have GTKGLEXT support by default. By default the GTKGLEXT doesn't
support Quartz as a back-end. I began with modifying GTKGLEXT to support
Quartz, but soon discovered someone already started such a patch.

That patch can be found here:
http://juvul.com/stuff/gtkglext-1.2.0.osx-hack.tar.gz

Unfortunately GTKGLEXT uses some deprecated functions when building
against GTK>=+2.20 used in GTK-OSX, so those had to be fixed. That patch
is attached and was borrowed from the folks at Debian.

I present this information to those who may be interested in rolling
their own builds without X11. At this time there is 1 issue that
prevents me from using it in production. Although the Quartz/OpenGL
back-end works well enough it does throw some errors on the console. I
believe it is because of the way the Quartz/OpenGL contexts are
supported. Secondly and less critical is that the program close
animation (if you have it on) does not work. Despite that people may
still find it very usable.

If you use GTK-OSX, you will want to make sure you install GNU
LibReadLine on your system - the Apple one has some functionality
missing that will cause undefined references. I also installed latest
libgmp, sqlite3, and Mesa  (built without X and without EGL to get the
OpenGL headers).

I had some GNUBG ./configure issues regarding the Makefile generated
(when compiling with Board3d support) and some headers that got entered
improperly. Most likely people will figure out what is wrong with the
paths in the generated Makefile and can adjust them manually. If you are
having difficulty I can be contacted in email.

-- 
Michael Petch
CApp::Sysware Consulting Ltd.
OpenPGP FingerPrint=D81C 6A0D 987E 7DA5 3219 6715 466A 2ACE 5CAE 3304

Attachment: fix_gtk-2.20_deprecated_symbols.dpatch
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]