2
我正在尝试为Python安装matplotlib库。安装是确定的,但是当我在Python中导入pylab(例如,将pylab导入为p)时,出现以下错误。python matplotlib库安装在max os x
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/mathtext.py", line 61, in <module>
import matplotlib._png as _png
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_png.so, 2): Symbol not found: _png_set_longjmp_fn
Referenced from: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_png.so
Expected in: flat namespace in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_png.so
谷歌搜索表明,链接错误(不找“_png_set_longjmp_fn”)是关系到一个32/64位编译问题为png格式库。
我试图根据库中的README.osx文件重新安装matplotlib,但没有修复。我发现其他方法没有解决它。另外,我检查了这些库是以32位还是64位编译的。相关的二进制文件如下支持(通用二进制文件)。
>file /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_png.so
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_png.so: Mach-O universal binary with 2 architectures
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_png.so (for architecture i386): Mach-O bundle i386
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_png.so (for architecture x86_64): Mach-O 64-bit bundle x86_64
>file /Library/Frameworks/libpng.framework/Versions/Current/libpng
/Library/Frameworks/libpng.framework/Versions/Current/libpng: Mach-O universal binary with 2 architectures
/Library/Frameworks/libpng.framework/Versions/Current/libpng (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64
/Library/Frameworks/libpng.framework/Versions/Current/libpng (for architecture i386): Mach-O dynamically linked shared library i386
我的OS X版本10.7.4狮子。你对这个问题有什么想法吗?谢谢!!!
不是你的问题的解决方案,但你可能想看看[Enthought Python](http:// www.enthought.com/products/epd.php)发行版,其中包含matplotlib随时可以发布的版本,以及其他常常难以在OS X上安装的工具。 – ChrisP 2012-07-12 13:41:32
做了什么你确实要安装matplotlib?你从源代码编译?我建议你像@ChrisP所说的那样安装Enthought的python发行版。 – 2012-07-12 18:10:19
enthought包解决了这个问题。谢谢你,克里斯!我从Github获得了matlablib并从源代码编译。无论如何,谢谢,杰森! – user1520172 2012-07-12 19:16:19