Hi guys,
I hope it's not too off topic on a Rails forum, but I spent so much time on this I thought I should share it here - hopefully it will help other people.
I had to compile a 32bit (i386) version of Ruby 1.8.7 on Snow Leopard (my app is using a 32bit only lib). So I configured the compilation as such: ./configure CFLAGS="-arch i386 -D_XOPEN_SOURCE=1" LDFLAGS="-arch i386" --enable-shared --enable-pthread
It seems to me that's the standard way to do this... but it doesn't work. Indeed, the "-arch i386" param is not passed to a cc call during the compilation (the compilation fails since it uses a 64bit version of a lib, instead of the 32 one).
I manually updated the Makefile (after executing ./configure with the params above):
LDSHARED = cc -arch i386 -dynamiclib -undefined suppress - flat_namespace
(adding -arch i386)
and the compilation worked fine.
Thanks, Pierre