我正在开发一个需要在多线程服务器上进行调试的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 </ p>
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 fat二进制文件。所以这个黑客解决了这个问题。其余的都是非常标准的配置,就像在任何其他平台上一样。
答案 0 :(得分:2)
这并没有直接回答你的问题,但是你有没有考虑过像MacPorts这样的东西呢?如果您正在编译许多这样的软件,MacPorts可以让您的生活更轻松,因为构建软件和依赖项几乎是自动的。