This covers the rather special Unix variant that is Apple MacOS X. You'll need XCode installed along with the Apple X11 implementation plus at least scons v0.96.1 (which added MacOS X support).
This page doesn't duplicate what's already said in Unix-specific notes so you should also read that.
You have two choices when building TnFOX on Apples - the first is the same as on other platforms where you set x86 or x64, however you MUST set architecture_version=7, x86_SSE=2 and x86_3dnow=0 in config.py as the Apple GCC won't output valid code for other architecture configurations.
The other choice is to specify one of the special architectures macosx-ppc/macosx-i386. If you want to build a Universal binary, then you must use these. Firstly you build one, then change the config and build the other so you get two full builds - one PowerPC, the other i386. This is necessary because the endian is different for each.
You must then merge the two binaries into a Universal one using Apple's libtool:
Merging code to be added later
/usr/local tree containing these from the TnFOX homepage after which these libraries will be found and used._APPLE_C_SOURCE when compiling any code using TnFOX. This causes alternative (and improved) implementations of many C library functions to be used instead of the defaults. Failing to do this will cause random crashes and other weird behaviour. dlclose() not kicking out a shared library like it's supposed to do. XInitThreads(), the OpenGL code hangs in the internally called XLockDisplay(). If you really need OpenGL working, you will have to comment out this call in FXApp.cpp.
v1.5.6