[Welcome] [TitleIndex] [WordIndex

These instructions are from Martin Blom (marblom at gmail):

I finally solved the problem.

I just compiled the scgi source with apxs and then I "thinned" the httpd daemon so that it runs in 32bit in stead of 64bit.

Using "lipo" forces Apache to run in 32bit Intel.

Here's how you do it:

To thin the Apache 'httpd' executable one should perform the following steps. Note that changes are being made to operating system supplied files and so backups should be made first.

cd /usr/sbin

sudo mv ./httpd ./httpd.fat
sudo lipo ./httpd.fat -thin i386 -output ./httpd.i386
sudo ln -s ./httpd.i386 ./httpd

After having done this, you should end up with:

$ file ./httpd.fat
../httpd.fat: Mach-O universal binary with 4 architectures
../httpd.fat (for architecture ppc7400): Mach-O executable ppc
../httpd.fat (for architecture ppc64):   Mach-O 64-bit executable ppc64
../httpd.fat (for architecture i386):    Mach-O executable i386
../httpd.fat (for architecture x86_64):  Mach-O 64-bit executable x86_64

$ file ./httpd.i386
../httpd.i386: Mach-O executable i386

When Apache is now run, it should run as Intel and not Intel (64 bit). You can check what it runs as using the 'Activity Monitor' application. Look at the 'Kind' column to see what it runs as.

I hope this helps.


2010-09-22 22:14