Ali Bahrami <Ali.Bahrami at Sun.COM> writes: > Hello, > > I've been working on getting GNU emacs 22.1 integrated into > Solaris, and have run into a problem that I need some help to > solve. > > Emacs can be built in three different ways: > > 1) Pure tty application (runs in a terminal emulator) > 2) Using Athena (libXaw) widgets, which are an ancient > toolkit from MIT X11 days, but which works well > enough with emacs. > 3) With GTK > > There is an issue with libXaw that means that a binary > built with (2) won't run under OpenSolaris: > > http://www.opensolaris.org/jive/thread.jspa?threadID=65995&tstart=0 > > That's going to be fixed at some point, but until then, a binary that > links to it won't work on OpenSolaris. > > I have experimented with statically linking libXaw into emacs, and although > that does work, doing so opens a whole raft of legal and technical issues: > > legal - I'd have to talk with lawyers for an extended period, > after which they'll probably say no anyway, which is > a waste of time I don't have for something that is a > short term hack. > > technical - Gatekeepers frown on crufty code bloat, and along > with agreeing with them, I fear them... :-) > > What this means that as things stand today, the GNU emacs that appears in > OpenSolaris will only be able to run as a tty application for some unknown > period > of time until the libXaw situation gets resolved. This may well be what > happens, > but I'd like to do better... > > Which brings me to the GTK version. Possibly, I could ship a GTK emacs > that would work on OpenSolaris, and which looks better in the bargain. > However, I have a problem to solve first. > > I can build emacs 22.1 with GTK, and the 32-bit version does work. However, > it spews a series of assertions to stderr that worry me (the stderr output > is attached). (I've seen this with emacs 22.2 also, don't know about any other > versions). > > It's possible (likely even) that this is a simple error in emacs, although I > don't understand GTK well enough to fix that efficiently. If you're deep in > GTK, and have a moment to download and build emacs 22.1, and could send me > patches > for that, you'd be doing a service to the whole community: > > http://ftp.gnu.org/pub/gnu/emacs/emacs-22.1.tar.gz > <unpack, and then> > % ./configure --with-gtk > % make > % src/emacs <<< SHould start quietly > > There's more to this than just debugging emacs, and I'd appreciate > any information you might be able to provide. I've been corresponding with > Rich Lowe, who has been building and using GTK emacs on snv_91 without > seeing these errors. We've been trying to find out how our builds differ, > but without much luck. > > I sent him a copy of my emacs-gtk binary (that produces the assertions). > When he ran it on his system, it ran cleanly (no asserts). I've tried > snv_95, and Open Solaris, and both produce them. When he ran snv_93 under > Virtual Box, he was also able to produce them. > > This is either a difference in the GTK bits between the Solaris versions, > or some sort of environmental issue. It's almost as if there's a 'debug mode' > enabled for GTK. Google brings up nothing other than the GTK_DEBUG environment > variable, which unfortunately does not seem to have a "be quiet" option. >
With some help from Glynn Foster, I'm pretty sure I now see what the difference is. In Nevada, I'm not using the Nimbus theme, in the Indiana VM I was (it was the default, and I hardly ever use that VM) If I switch my Nevada desktop to use that theme, I see these assertions, with the theme I was using previously (clearlooks) I do not. Narrowing it down, it appears that the Nimbus GTK theme/style/whatever (the "controls" bit in the prefs->appearences dialog), is what causes this to start happening, switching away from it causes it to stop. That would seem to suggest this isn't emacs' doing at all. -- Rich
