Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在mac Mountain Lion上安装用于pil和Google应用程序引擎的libjpeg_Python_Jpeg_Python Imaging Library_Libjpeg_Installation - Fatal编程技术网

Python 在mac Mountain Lion上安装用于pil和Google应用程序引擎的libjpeg

Python 在mac Mountain Lion上安装用于pil和Google应用程序引擎的libjpeg,python,jpeg,python-imaging-library,libjpeg,installation,Python,Jpeg,Python Imaging Library,Libjpeg,Installation,我肯定有一个复制品在那里的某个地方,但我看了,并在我的绳子末端左右。我正在尝试让PIL在我的MacOSX10.8上工作,这样我就可以使用dev_appserver.py来测试成像功能。首先,我在安装PIL时遇到了麻烦,直到我获得了自制软件并使用brew install PIL安装了它。我认为brew安装了所有必要的依赖项,但当我试图在我的应用程序中调整jpeg的大小时,它说IOError:decoder jpeg不可用。所以我在网上查了一下,大多数地方都说我需要(1)卸载PIL,(2)从源代码安

我肯定有一个复制品在那里的某个地方,但我看了,并在我的绳子末端左右。我正在尝试让PIL在我的MacOSX10.8上工作,这样我就可以使用
dev_appserver.py
来测试成像功能。首先,我在安装PIL时遇到了麻烦,直到我获得了自制软件并使用
brew install PIL
安装了它。我认为brew安装了所有必要的依赖项,但当我试图在我的应用程序中调整jpeg的大小时,它说
IOError:decoder jpeg不可用
。所以我在网上查了一下,大多数地方都说我需要(1)卸载PIL,(2)从源代码安装libjpeg,(3)重新安装PIL。因此,我
brew卸载PIL
,然后

curl -O www.ijg.org/files/jpegsrc.v7.tar.gz
tar zxvf jpegsrc.v7.tar.gz
cd jpeg-7d/
./configure
make
make install
最后是
brew安装pil
。我重新启动dev_appserver.py并在localhost上重新加载页面,但出现了相同的错误。我使用

>>> from PIL.Image import Image
>>> f = open("someimagefile", "rb")
>>> i = Image()
>>> i.fromstring(f.read(), decoder_name="jpeg")
Traceback blah blah blah
IOError: decoder jpeg not available

我没有多少从命令行安装实用程序的经验,所以我可能错过了一些显而易见的东西。同样,如果有重复的,我很抱歉,但正如我所说的,我查找了,没有找到任何似乎有效的内容。

PIL在编译过程中没有找到libjpeg头。有关如何指定标头(“包含”)位置(例如作为环境变量)的信息,请参阅构建系统文档。

终于可以使用了!感谢@zgoda和这个。以下是我为那些有同样问题的人总结的步骤:

首先确保未安装PIL。从下载libjpeg并将其解压缩,
/configure
make
。当我尝试安装时,它找不到存储手册页的目录,所以安装失败。我查看了上面链接上的信息,决定

cp-r~/Downloads/jpeg-6d//usr/local/jpeg

我怀疑如果安装顺利,那条线就没有必要了

然后在PIL的setup.py中编辑以下行:

JPEG_ROOT = None

最后:

$ python setup.py build
$ python setup.py install

现在我似乎很难找到libjpeg。我多次尝试使用brew安装它,并从源代码安装。我在
/usr/local/cillar
中找到了一个名为
jpeg
的文件夹,我想是brew放在那里的。我尝试将setup.py中的
JPEG\u ROOT
设置为
/usr/local/cillar
并运行
python setup.py build
。但当我进行自检时,它显示它仍然没有jpeg解码器。我为/usr/local/lib/再次尝试了它,因为我在那里看到libjpeg.dylib,但仍然不起作用。再说一次,在UNIX上安装实用程序时,我还是个新手。如果我遗漏了一些明显的东西,我很抱歉。您好,这非常有帮助。我可以向其他读者澄清一下(因为我错过了):在复制步骤之后,您需要
sudo make install
。这也被描述了。我也不需要编辑
setup.py
或执行它。
$ python setup.py build
$ python setup.py install