5

我在 Mac OSX 10.5.8 上。我关注了 Jacob Kaplan-Moss 关于使用 Buildout 设置 Django 的文章:http: //jacobian.org/writing/django-apps-with-buildout/

最后,我让这个 Buildout 工作了!...但我现在需要 PIL 和 Postgres 来构建一个完全独立的 Django 开发区域。我试图用我在互联网上阅读过的教程修改我的 buildout.cfg,但只是找不到如何做到这一点而不会引发各种错误。我觉得 PIL 和 Postgres 是完成这个小设置的下一步,所以我可以继续它......(顺便说一下,我不是这方面的专家,我来自 PHP 背景)。我当前的 buildout.cfg 看起来像这样:

[buildout]
parts = python django
develop = .
eggs = myproject

[python]
recipe = zc.recipe.egg
interpreter = python
eggs = ${buildout:eggs}

[django]
recipe = djangorecipe
version = 1.1.1
project = myproject
projectegg = myproject
settings = testsettings
test = myproject
eggs = ${buildout:eggs}

谁能帮助我可靠地让 PIL 和 Postgres 与我的 Buildout 一起工作?提前非常感谢你......到目前为止我尝试过的所有事情都会引发各种错误。

4

2 回答 2

8

理论上,您应该能够在指令中添加和PILpsycopg2eggs

eggs = myproject
       PIL
       psycopg2

这适用于某些系统和某些情况。

但是,有两个问题可以阻止它在任何地方工作,尤其是在 OSX 上:

  1. PIL的包装......在某种程度上很奇怪,这可能会使从 PyPI 安装它失败。
  2. PIL和都是psycopg2C 扩展,这意味着您需要拥有正确的共享库和头文件,然后才能构建和安装它们。

修复 (1) 很容易:只需添加

find-links = http://dist.plone.org/thirdparty/

到你的[buildout]部分。Plone 人维护了一个PIL带有 Buildout 的 Just Works™ 的鸡蛋。

PIL修复 (2) 有点复杂,并且取决于具体情况:您需要确保拥有所有依赖的各种头文件psycopg2

psycopg2

如果您已经从PostgeSQL for Mac发行版(我推荐)安装了 PostgreSQL,那么它应该已经为您正确安装了头文件并且psycopg2可以正常构建。

如果您已经从源代码安装了 PostgreSQL,那么您将拥有头文件;psycopg2应该很容易构建。

然而,如果你以其他方式安装了 PostgreSQL——fink、ports、homebrew——那么你需要小心并确保你已经安装了开发文件。postgresql-dev在某些包系统中,有一个带有开发头文件的单独包;其他人会自动安装。

如果您已正确完成此操作,您应该能够运行pg_config并验证INCLUDEDIR设置是否已设置并正确指向头文件(在libpq目录中查找INCLUDEDIR目录)。

PIL

PIL 要复杂得多,因为它依赖于更多的库。至少你需要安装libjpeglibpng. 如果您使用的是 10.6,它们应该已经为您安装了;如果没有,最简单的方法可能是从源代码下载并安装它们:libpnglibjpeg

于 2010-01-18T15:29:00.303 回答
0

扩展上面的(2)

PIL 与可以通过以下步骤安装的其他组件一起使用。

JPG

wget http://www.ijg.org/files/jpegsrc.v8b.tar.gz 
tar xzf jpegsrc.v8b.tar.gz 
cd jpeg-8b/ 
./configure 
make 
sudo make install 

自由式

http://sourceforge.net/projects/freetype/files/ 
wget http://downloads.sourceforge.net/project/freetype/freetype2/2.4.4/freetype-2.4.4.tar.bz2 
tar xjf freetype-2.4.4.tar.bz2 
cd free* 
./configure 
make 
sudo make install

LittleCMS 1.19(非 2.0+)

http://downloads.sourceforge.net/project/lcms/lcms/1.19/lcms-1.19.tar.gz 
tar xzf lcms-1.19.tar.gz 
cd lcms*
./configure 
make 
sudo make install 
于 2010-12-30T21:03:55.627 回答