【发布时间】:2010-09-27 00:37:43
【问题描述】:
我正在处理一个需要在多线程服务器上进行调试的 Django 项目。我发现 mod_wsgi 2.0+ 是最容易使用的,因为 python 模块重新加载的简单解决方法。问题是无法在 Leopard 上编译。到目前为止,有没有人设法做到这一点,无论是内置的 Apache 还是 MAMP。如果有人发布指向预编译二进制文件的链接(适用于 intel、python 2.5、apache 2.2 或 2.0),我将不胜感激。
经过 3 小时的反复试验,我成功地为 Leopard 附带的 Apache 编译了 mod_wsgi 2.3。以下是其他人需要时的说明。
- ./配置
-
在 Makefile 中更改 2 行
CFLAGS = -Wc,'-arch i386'
LDFLAGS = -arch i386 -Wl,-F/Library/Frameworks -framework Python -u _PyMac_Error
make && sudo make install
-
制作原始 httpd 的精简二进制文件
cd /usr/sbin
sudo mv ./httpd ./httpd.fat
sudo lipo ./httpd.fat -thin i386 -output ./httpd.i386
sudo ln -s ./httpd.i386 ./httpd
这应该适用于 intel macbook、macbook pro、imac 和 mac mini。据我了解,由于一些奇怪的架构不匹配问题,modwsgi 无法针对 MacPython 2.5.2 进行编译。但是,如果您将其编译为瘦二进制文件,它将无法与 Apache 胖二进制文件一起使用。所以这个hack解决了这个问题。其余的都是相当标准的配置,就像在任何其他平台上一样。
【问题讨论】: