As Fink would install an XEmacs version from the beta branch, using the latest beta release seemed like a good start (21.5.15). "./configure --with-mule" told me that I didn't have libpng and that it was highly recommended to install it.

libpng 1.2.5 worked more or less out-of-the-box, I only had to add a -dynamiclib option to LDFLAGS in makefile.macosx. I also had to manually create a symlink from libpng.3.1.0.2.dylib to libpng.dylib to make -lpng work

OK, rerun configure for XEmacs and it finds the new library. Run make and wait 25 minutes. temacs has been compiled and links successfully, the emacs lisp files get compiled just fine, xemacs gets dumped and recompiles the lisp files, everything looks good until "ellcc" fails to create eldap.ell because of a bunch of undefined symbols.

After a lot of playing around I found that changing ELLCC_DLL_LDFLAGS from "-shared" (which isn't supported on MacOS X anyway) to "-flat_namespace -undefined suppress" in lib-src/ellcc.h created a working xemacs (at least at first glance). Unfortunately I haven't found any way to tell configure to create it, but there is an environment variable ELLDLLFLAGS that is supposed to override the setting.

So what I do now is

> ./configure --with-mule
> export ELLDLLFLAGS="-flat_namespace -undefined suppress"
> make
and it seems to work. The fonts are the ugliest things I've ever used, but that can be solved later.

path: /en/Mac/XEmacs | #

Bootstrapping Fink went smoothly, but took more than four hours on my 600 MHz G3 iBook that was busy rsyncing some stuff into my home dir.

That machine is too slow to compile everything myself, so I want to rely on binary packages. I guess I should have read this post before starting dselect. After fiddling with the package list locations I got dselect into a strange state where it insisted on uninstalling system-x11, claimed darwin was not installed and a whole bunch of other strange errors.

So time for Plan B. Uninstall Fink and wait for a 10.3 binary release for not so critical stuff (SDL, dia, various things I rarely use), install the most important software manually. The single most important piece of software to me is XEmacs, so I tried to compile it myself - and it fails in the linking stage because of undefined symbols.

The same happens for ifile that I use as a Bayesian Spam Filter. The "./configure; make" sequence worked fine on Jaguar so I guess it must be a gcc 3 thing that can be sorted out by using the correct linker arguments. I wish this page wasn't empty right now.

On the success side, the binary nethack distribution from nethack.org worked like a charm and as Terminal.app now seems to be usable with xterm-color terminal settings, colors have come back to the game for me (it's better to know the color of those "D"s when you meet them). It even accepted my old save file.

path: /en/Mac | #