python – 安装PIL与Mac OS X上的Django一起使用

在Mac OS X 10.6上安装PIL(Python Imaging Library)真的很烦人。有没有人安装,可以在这里张贴食谱?我已经尝试了很多他们在这个网站上发布了很多从谷歌,但总是安装失去一些部分,不能正常工作与PIL …

提前致谢。
Ignas

最佳答案
编辑:这个答案最近被投票了,我想修改它,以反映我现在在做什么。

首先,我在Mac OS X上从MacPorts切换到Homebrew进行包管理。其次,我从使用我的包管理器切换到使用pipvirtualenvwrapper来管理我的Python库。

为什么我切换:

起初,只需几个Django项目,使用MacPorts来保持所有最新版本变得非常简单。使用python_select拥有多个版本的Python也是相当容易的。我没有意识到,我正在做一个相当可怕的工作,保持多个图书馆并肩工作。当我升级我的包,有时我真的不希望项目的Django版本改变,这变得显而易见。经过几个Django 1.1项目(现在运行Django 1.3),开始展示了奇怪的行为(由于CSRF中间件更改导致的表单未能提交,Django库中的小差异,管理应用程序资产的变化等)变得很明显,我应该看成为更好的解决方案。

我现在应该做什么:

在Mac OS X上,我转移到使用pip和virtualenvwrapper。首先,我安装了virtualenvwrapper:

pip install virtualenvwrapper

这将抓住virtualenv和virtualenvwrapper。然后,您需要将以下内容添加到.bashrc或.profile中,并将其引用或打开一个新的shell。

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh # where Homebrew places it
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' # optional

第1行设置变量workon需要找到它的文件。第2行指向主shell脚本(这里的路径是Homebrew放置文件的位置,如果使用另一个包管理器,则可能会有所不同)。第3行是可选的,但我真的很喜欢它:它确保“main”site-packages存储库中当前没有安装的库将泄漏到新创建的虚拟环境中。我发现这样做会使事情变得清洁,并且随着事情的升级,导致更少的惊喜。

下一步是创建一个新的虚拟环境:

mkvirtualenv testEnvironmentName

在制作环境之后,您将被放置在其中。如果你保留了–no-site-packages标志,你可以键入点冻结,看看你的Python库slate现在是空白的。要从虚拟环境中退出,请使用deactivate命令。要再次进入你的virtualenv,可以使用workon testEnvironmentName。请注意,您可以在环境名称上使用选项卡完成。还要注意,打字工作本身将为您提供可用环境的列表。从这里你可以安装所需的任何图书馆,包括PIL。

要了解更多关于virtualenvwrapper,I recommend checking out the documentation

Here’s another great resource which taught me a lot about using virtualenvwrapper(or just view the screencast)

原版的:

您还可以使用MacPorts安装PIL。包名称为py-pil。 Here’s more information on the package.我非常喜欢MacPorts over pip,因为我发现它给我一些更多的可配置性,当涉及到保存几个版本的python和几个库安装。

以下是MacPorts的安装说明:http://www.macports.org/install.php

参见:What is the most compatible way to install python modules on a Mac?

转载注明原文:python – 安装PIL与Mac OS X上的Django一起使用 - 代码日志