scipy给出了未定义的符号:clapack_sges

2024-05-20 20:45:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我想有一个干净的开始,所以我已经编译了我自己的 最新的ATLAS、Lapack和python2.7.3的副本。在

我安装了numpy,它从ATLAS重新编码BLAS 下面的作品。。。在

  python
  import numpy
  numpy.test()

但小淘气可不是那么容易的!在

^{pr2}$

在搜索clapack sgesv的定义时,我在网站packages/scipy中找不到:

$ cd /projects/nrel/cid/ladab/pkgi/lib/python2.7/site-packages/scipy/linalg

$ for ii in *.so; do echo ========== $ii; nm $ii | egrep clapack_sgesv
> done
========== atlas_version.so
========== calc_lwork.so
========== cblas.so
========== clapack.so
                 U clapack_sgesv
00000000002103e0 d doc_f2py_rout_clapack_sgesv
0000000000009810 t f2py_rout_clapack_sgesv
========== fblas.so
========== flapack.so
========== _flinalg.so

很明显,在LD_LIBRARY_PATH可以买到,但是scipy 不是在用它。。。在

$ echo $LD_LIBRARY_PATH
/projects/nrel/cid/ladab/pkgi/lib:/usr/lib64

$ cd /projects/nrel/cid/ladab/pkgi/lib

$ for ii in *.so; do echo ========== $ii; nm $ii | egrep clapack_sgesv; done
========== libsatlas.so
0000000000094ce0 T clapack_sgesv
========== libtatlas.so
00000000000accb0 T clapack_sgesv

你有什么建议吗?在


Tags: echonumpysolibpackagesscipyiiprojects
2条回答

我在从Ubuntu 12.04升级到12.10后遇到了这个问题。问题是我在/usr/local/lib/python2.7/dist-packages中安装了scipy的两个版本。为了解决这个问题,我做了:

 sudo apt-get remove python-scipy
 sudo rm -fr /usr/local/lib/python2.7/dist-packages/scipy*
 sudo apt-get install python-scipy

非常感谢亚当·卡迪安的评论。。。http://www.scipy.org/Installing_SciPy/Linux中关于“在Ubuntu上使用gfortran从源代码构建一切”的部分(2010年11月)仍然运行良好。在

相关问题 更多 >