views:

104

answers:

1

I have a website that processes user submitted documents in a variety of ways, one of which is to do a spell check on a part of each document. When I set this website up on a Mac Mini (yes, I realize that's a pretty weak piece of equipment for a website, but it's internal and no one outside the office sees it), I remember having some trouble getting aspell-python to play nice with an install of Aspell when being invoked from Apache, but foolishly forgot to write down how I got around it. I'm under the impression that it had something to do with Apache, Python, and Aspell being compiled to run under different bit modes (64 for Apache, 32 for Python and Aspell, maybe).

In any case, I'm using the stock Apache and Python installs, and have built Aspell from source as well as installed it from MacPorts. It's been happily chugging along for about a year, but...

Fast forward to today: I ran OS X's software update (now I'm up to 10.5.8) and suddenly my spell checker stopped working. Currently, the message that's being thrown up by Django is that "no suitable image was found" by aspell-python, specifically that there is "no matching architecture in the universal wrapper".

Aspell and aspell-python continue to work fine from the command line, but not through the website. Does anyone have any thoughts?

Edit: Using 10.5.8 now, also, my psycopg2 bindings have stopped working. Both aspell and psycopg2 were being used as shared objects, if that's any help.

+1  A: 

If your upgrade was only from one patch revision of 10.5 to later patch revision of 10.5, then you shouldn't have seen any change in behaviour in respect of requirement for 32 bit vs 64 bit. If it broke now, it should have broke before as it has always behave same for 10.5 and didn't change in a patch revision.

The only reason this may not be the case, is if you followed instructions as documented in:

http://code.google.com/p/modwsgi/wiki/InstallationOnMacOSX

and thinned your Apache executable so only ran as 32 bit, or updated its plist file to similarly run as 32 bit.

This is because some of the 10.5 patch revisions replace the Apache executable and possibly the plist file and so your local change would have been overridden.

That documentation does note that you may have to reapply those changes after an upgrade of operating system.

Graham Dumpleton
Adjusting the plist didn't seem to make a difference, but thinning the httpd executable again after the update fixed the problem entirely. Thanks for the help, I hadn't realized software updates might replace my work.
OlduvaiHand