Thx for the responses. I'm on the road right now and can't do a lot more for a couple more days, but on the plane today I managed to get nsfts.so to compile. The solution appears to be that you have to add the flags
-bundle -undefined suppress -flat_namespace
to the LD definitions in the Makefiles in all the subdirectories in the source tree as well as remove the -shared flag in the same locations.
So, ../parser/Makefile should have this line:
LDSO = $(CC) -bundle -undefined suppress -flat_namespace -o $(PARSERLIB)
and so should these:
../dict/Makefile
../dict/snowball/Makefile
../aolserver/Makefile
The reason I got the complaint about the undefined option -shared was because I missed one use of it in ../dict/snowball/Makefile. Anyway, once those changes were made, the compile finished.
I haven't finished out compiling and installing the rest of the modules, nor have I tested whether it all is going to work in OpenACS. But I'm pretty confident that this is probably going to work.
Once I'm sure that it does, I'll create a patch for the OpenFTS tarball that makes all these changes and post it to new-file-storage. It's not really a bug, so I can't see putting this in bugtracker.
Carl (and Svet), I'd be glad to collaborate on the install doc. I've actually got a rather lengthy draft already done. Unfortunately I'm not going to have much time until Thursday to get back to it.