Find which libjpeg is being used by PIL / PILLOW

社会主义新天地 提交于 2019-12-04 14:56:18

First, locate the PIL egg that your Python installation is using:

>>> import PIL
>>> PIL.__path__
['/usr/local/python/2.7.3/lib/python2.7/site-packages/PIL']

Then locate _imaging.so in that directory and use ldd (Linux) or otool -L (OS X) to find out what version of libjpeg it has been linked against:

Linux

$ ldd /usr/local/python/2.7.3/lib/python2.7/site-packages/PIL/_imaging.so
    linux-gate.so.1 =>  (0x00641000)
    libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x00f00000)
    libz.so.1 => /lib/libz.so.1 (0x006f4000)
    libpthread.so.0 => /lib/libpthread.so.0 (0x00fad000)
    libc.so.6 => /lib/libc.so.6 (0x0021b000)
    /lib/ld-linux.so.2 (0x0067e000)

Mac OS X

$ otool -L /Users/lukas/src/pillow-env/lib/python2.7/site-packages/PIL/_imaging.so
/Users/lukas/src/pillow-env/lib/python2.7/site-packages/PIL/_imaging.so:
    /usr/local/lib/libjpeg.8.dylib (compatibility version 13.0.0, current version 13.0.0)
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
    /usr/local/lib/libtiff.5.dylib (compatibility version 8.0.0, current version 8.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)

Try this:

ldd path/to/your/PIL/_*.so

If you are using virtualenv, try to find PIL on your VIRTUALENV_HOME, usually it is under

~/.virtualenvs/$VIRTUAL_ENV/lib/python2.7/site-packages/PIL

If you are using ubuntu packages, use dpkg to find the location of your pillow/PIL install.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!