python - Pillow with pypy, _imagingft C 模块未安装

标签 python pypy

Pillow with pypy 在 CentOS 6.8 版本上不起作用, 我使用pip卸载/安装枕头就可以了, 但仍然是“ImportError:未安装 _imagingft C 模块”, 这是输出:

[root@localhost bin]# ./pip install pillow
Collecting pillow
Requirement already satisfied: olefile in /usr/local/pypy-5.6-linux_x86_64-portable/site-packages (from pillow)
Installing collected packages: pillow
Successfully installed pillow-4.0.0

[root@localhost bin]# ./pypy
Python 2.7.12 (aff251e543859ce4508159dd9f1a82a2f553de00, Nov 12 2016, 08:50:18)
[PyPy 5.6.0 with GCC 6.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>> from PIL import Image, ImageDraw, ImageFilter, ImageFont
draw.text((100,100), 'test text', font = font)>>>> im = Image.new('RGB', (300,300), 'white')
>>>> draw = ImageDraw.Draw(im)
>>>> font = ImageFont.truetype('Arial.ttf', 14)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/pypy-5.6-linux_x86_64-portable/site-packages/PIL/ImageFont.py", line 238, in truetype
    return FreeTypeFont(font, size, index, encoding)
  File "/usr/local/pypy-5.6-linux_x86_64-portable/site-packages/PIL/ImageFont.py", line 127, in __init__
    self.font = core.getfont(font, size, index, encoding)
  File "/usr/local/pypy-5.6-linux_x86_64-portable/site-packages/PIL/ImageFont.py", line 37, in __getattr__
    raise ImportError("The _imagingft C module is not installed")
ImportError: The _imagingft C module is not installed

我使用:pip install pil

[root@localhost bin]# ./pip install PIL
Collecting PIL
  Could not find a version that satisfies the requirement PIL (from versions: )
No matching distribution found for PIL

它不起作用

我使用:pip install http://effbot.org/downloads/Imaging-1.1.6.tar.gz 安装没问题,但仍然出现“ImportError:没有名为 _imagingft 的模块”

我也下载了pillow的源码tar,但是找不到太多的库! 安装的库:

SYSPKGS="$SYSPKGS kernel python python-devel telnet subversion libffi libffi-devel"
SYSPKGS="$SYSPKGS tcl tk ncurses-devel expat-devel bzip2-devel sqlite-devel"
SYSPKGS="$SYSPKGS openssl-devel openssl pcre pcre-devel libxml2-devel libxslt-devel"
SYSPKGS="$SYSPKGS libtiff-devel libjpeg-devel libjpeg-turbo-static freetype-devel"
SYSPKGS="$SYSPKGS zlib zlib-devel zlib-static wget curl net-tools"

yum -y install $SYSPKGS 

大多数google的结果都是针对ubuntu、win、macOS,有针对centos6.8的解决方案吗?

救命! :(

最佳答案

Pillow 的 4.0.0 不适用于 PyPy:我必须先修复 PyPy 中的 distutils,然后才能安装它。通过此修复,您的示例就可以工作了。

您可以通过向 PyPy 发行版内的文件 lib-python/2.7/distutils/unixccompiler.py 添加几行来手动安装修复程序:请参阅 https://bitbucket.org/pypy/pypy/commits/66ef3eb6a91e 。它还将包含在下一个 PyPy 版本中。

关于python - Pillow with pypy, _imagingft C 模块未安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41738432/

相关文章:

python - 在Python3中测量CPU时间的最佳方法?

python - 在Python中创建任意深度的嵌套字典

python - PyPy:不能对 ast 类进行 Monkeypatch 吗?

python - 为什么集合减法和 .difference() 运行速度不同

python - 在 PyPy 上运行 Scrapy

python - CPython 和 PyPy 如何决定何时调整集合的大小?

python - 在 pytorch 中加载自定义数据集

python - 向二叉搜索树添加一个元素

python - 拆分、删除空格并分解数据框中的字符串

python - 如何在 Windows 10 上运行的 PyCharm 上使用 PyPy(适用于 python 3.6)?