Ubuntu 12.04上python matplotlib MKL致命错误
这是我的Python代码
1 import matplotlib.pyplot as plt
2 plt.plot([1, 2, 3, 4])
3 plt.ylabel('some numbers')
4 plt.show()
当我运行这段代码时,出现了以下错误信息
$ python test.py
*** libmkl_avx.so *** failed with error : /usr/local/enthought/lib/libmkl_avx.so: undefined symbol: i_free
*** libmkl_def.so *** failed with error : /usr/local/enthought/lib/libmkl_def.so: undefined symbol: i_free
MKL FATAL ERROR: Cannot load neither libmkl_avx.so nor libmkl_def.so
这是我的Python版本。
$ python --version
Python 2.7.2 -- EPD 7.2-2 (64-bit)
1 个回答
1
我知道这个问题已经有点老了,但我也遇到了同样的问题,找到了解决办法,而且不需要重新安装。所以给未来的读者分享一下我做的事情:
@root 在上面评论里提到了一个链接,指向了英特尔论坛。那里的一个回答建议预加载一些MKL库。(这个评论的日期是2009年10月20日 - 10:32,我不知道怎么链接到那条具体的评论)。
这个办法对我有效。不过,你需要找到你的libmkl_core.so和libmkl_sequential.so库存放在哪里。对我来说,它们的位置是:
export LD_PRELOAD=/usr/local/Canopy/v152/CanopyCore/appdata/canopy-1.5.2.2785.rh5-x86_64/lib/libmkl_sequential.so:/usr/local/Canopy/v152/CanopyCore/appdata/canopy-1.5.2.2785.rh5-x86_64/lib/libmkl_core.so
在/usr/local/Canopy/v152/Canopy_64bit/User/lib/
里也有副本,但这些版本不好用。只有上面提到的那个有效。
希望这能帮助到将来的某个人!