首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有“异常值:没有安装_imaging C模块”,我在Mac上构建了/Python/PIL?

有“异常值:没有安装_imaging C模块”,我在Mac上构建了/Python/PIL?
EN

Stack Overflow用户
提问于 2010-01-23 19:00:51
回答 1查看 2K关注 0票数 2

我在用FeinCMS为Django项目使用Buildout。我已经在我的Mac雪豹上安装了很好的本地程序,在我使用runserver时没有出现任何错误。但是当我在管理区域上传一个带有FeinCMS的图像时,它会产生一个“异常值:_imaging C模块没有安装”错误。

我的回溯记录在这里:http://dpaste.com/149492/

我的buildout.cfg文件如下所示:

代码语言:javascript
复制
   [buildout]
   parts =
        zlib
        libjpeg
        PILwoTk
        django-mptt
        django-staticfiles
        django

    eggs =
        PILwoTk
        feincms

    [zlib]
    recipe = hexagonit.recipe.cmmi
    url = http://www.zlib.net/zlib-1.2.3.tar.gz
    configure-options = --shared

    [libjpeg]
    recipe = hexagonit.recipe.cmmi
    url = http://www.ijg.org/files/jpegsrc.v8.tar.gz

    [PILwoTk]
    recipe = zc.recipe.egg:custom
    find-links = http://download.zope.org/distribution/
    include-dirs =
        ${zlib:location}/include
        ${libjpeg:location}/include
    library-dirs =
        ${zlib:location}/lib
        ${libjpeg:location}/lib
    rpath =
        ${zlib:location}/lib
        ${libjpeg:location}/lib

    [django-mptt]
    recipe = infrae.subversion
    urls = http://django-mptt.googlecode.com/svn/trunk/mptt mptt

    [django-staticfiles]
    recipe = mercurialrecipe
    repository = http://bitbucket.org/jezdez/django-staticfiles/

    [django]
    recipe = djangorecipe
    version = 1.1.1
    project = recoilmedia
    eggs = ${buildout:eggs}
    extra-paths =
        ${django-mptt:location}
        ${django-staticfiles:location}

我问过FeinCMS组、Django IRC/组,但是在这方面完全没有任何人的帮助。我已经在网络上到处寻找解决方案,但仍然没有找到有效的解决方案。它把我扔到墙上,我被困在墙上一整天了。有没有人知道问题出在哪里?

EN

回答 1

Stack Overflow用户

发布于 2010-02-10 07:27:23

我今天也经历了同样的事情,找到了解决办法。问题是PIL将寻找32位libjpeg,而雪豹默认将库编译为x86_64。可以通过修改libjpeg部分来修复这个问题,如下所示:

代码语言:javascript
复制
[libjpeg]
recipe = hexagonit.recipe.cmmi
url = http://www.ijg.org/files/jpegsrc.v8.tar.gz
environment =
  CC=gcc -arch i386

您可以通过运行以下命令来检查_imaging.so正在使用的库:

代码语言:javascript
复制
otool -L path/to/PIL/_imaging.so

它应该输出指向构建目录中的libjpeg.8.dylib的行。

编辑:再想一想,使用CC="gcc -arch i386" bin/buildout运行构建也是可行的。如果您想编译一个fat二进制文件,请记住使用GCC-4.0并添加CPP:CC="gcc-4.0 -arch i386 -arch ppc" CPP="gcc-4.0 -E" bin/buildout

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2124306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档