我试图让 cvxopt 在 linux-ppc64 系统上运行。我必须从源代码开始编译和安装所有东西,大致按照以下顺序,没有 root 访问权限。
a) Python 2.7 b) BLAS, LAPACK c) NUMPY, SCIPY d) CVXOPT
我首先安装了 Python,然后设法让 pip 运行。我所有的包都在 ~/local. (PYTHONUSERBASE=~/local)。
我编译了 BLAS、LAPACK 并将这些库放入 ~/local/lib。Pip 成功地安装了 numpy、scipy 和 cvxopt,没有任何抱怨。但是,在运行测试 cvxopt 代码(cvxopt 示例目录中的 lp.py)时,我收到以下错误:
ImportError: /users/home/jaikumar/.python-eggs/cvxopt-1.1.8-py2.7-linux-ppc64.egg-tmp/cvxopt/blas.so: undefined symbol: _gfortran_st_write_done
我检查了系统上除了 gfortran 之外没有安装其他 fortran 编译器。libgfortran 存在于 /usr/lib64/libgfortran.so.3
有人可以告诉我为什么出现未定义的符号“_gfortran_st_write_done”以及如何解决它?
另外,为什么它会在我的主目录中创建这个临时目录 ~/.python-eggs ?这是正常的吗?
谢谢!