Я пытаюсь установить Lapack, чтобы использовать его с PHP (http://php.net/manual/en/book.lapack.php), поскольку это единственная библиотека PHP, которую я нашел который содержит вычисления для сингулярных значений.
Я на сервере Ubuntu 14.04 с Apache2.
Я установил gfortran и liblapack-dev, как указано на других сайтах, но все они перестают описывать, как его включить. Короче говоря, я получаю qerror при вызове статической функции из Lapack, говоря, что это не определенный класс.
Я полагаю, что мой следующий шаг включает расширение, но, несмотря на этот вопрос (Как проверить, какие расширения PHP были включены/отключены в Ubuntu Linux 12.04 LTS?) Я не нашел упоминания о Лакпеке. Как мне возобновить установку Lapack для PHP? Благодарю!
Установка Lapack из источника
Примечание. Протестировано на Ubuntu 16.04.
Установите предварительные условия:
sudo apt-get install php5-dev git svn cmake gfortran liblapack-dev
Следуйте инструкциям здесь (скопировано для удобства):
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
Это создаст общую библиотеку Lapack. Теперь клонируйте расширение php из источника:
git clone https://github.com/ianbarber/php-lapack
И следуйте инструкциям, описанным там:
cd php-lapack
phpize
./configure
make
sudo make install
Проверьте, установлено ли расширение: php -m | grep -i lapack
Обратите внимание, что расширение, скорее всего, несовместимо с PHP 7, так как оно не обновлялось более 5 лет.