我正在尝试安装Lapack以使用PHP(http://php.net/manual/en/book.lapack.php),因为它是我发现的唯一包含奇异值计算的PHP库.
我在使用Apache2的Ubuntu 14.04服务器上.
我按照其他网站的指示安装了gfortran和liblapack-dev,但他们都没有描述如何包含它.简而言之,当从Lapack调用静态函数时,我得到一个错误,说它不是一个定义的类.
我认为我的下一步是启用扩展,但是尽管遵循了这个问题(如何检查在Ubuntu Linux 12.04 LTS中启用/禁用了哪些PHP扩展?)我没有提到Lapack.我该如何恢复安装Lapack for PHP?谢谢!
从源代码安装 Lapack
注意:在 Ubuntu 16.04 上测试。
安装先决条件:
sudo apt-get install php5-dev git svn cmake gfortran liblapack-dev
Run Code Online (Sandbox Code Playgroud)
请按照此处的说明进行操作(为了方便而复制):
svn co https://icl.cs.utk.edu/svn/lapack-dev/lapack/trunk lapack
cd lapack
mkdir build
cd build
cmake -D BUILD_SHARED_LIBS=ON -D LAPACKE=ON ../
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
这将创建 Lapack 共享库。现在从源代码克隆 php 扩展:
git clone https://github.com/ianbarber/php-lapack
Run Code Online (Sandbox Code Playgroud)
并按照其中所述的说明进行操作:
cd php-lapack
phpize
./configure
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
检查是否安装了扩展:php -m | grep -i lapack
请注意,该扩展很可能与 PHP 7 不兼容,因为它已经超过 5 年没有更新了。