Python 用の matplotlib ライブラリをインストールしようとしています。インストールは問題ありませんでしたが、Python で pylab をインポート (例: pylab を p としてインポート) すると、次のエラーが発生しました。
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
Google 検索は、リンク エラー ( "_png_set_longjmp_fn" を検索しない) が png ライブラリの 32/64 ビット コンパイルの問題に関連していることを示しています。
ライブラリの 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 バージョンは Lion 10.7.4 です。この問題について何か考えはありますか?ありがとう!!!