Я хочу установить расширение v8js для PHP5.5 на Ubuntu 12.04, но не могу заставить его работать.
Когда я пытаюсь установить расширение v8js версии 0.2.0 (последнее) с PECL, у меня есть это сообщение:
configure: ошибка: libv8 должен быть версии 3.24.6 или выше ERROR: `/ tmp / pear / temp / v8js / configure –with-v8js 'не удалось
Если я пытаюсь установить старую версию, у меня есть ошибка компиляции. Это сообщение очень похоже на мою проблему: установите v8js для php на ubuntu
Как я могу исправить эту проблему?
EDIT: я не смог установить его на Ubuntu 14.04 с PHP5.5, даже с понижением PHP с PHPbrew до PHP 5.4. Однако использование Ubuntu 12.04 с PHP 5.4 отлично работает. Я не пробовал понизить рейтинг с PHP 5.5 до 5.4 на Ubuntu 12.04.
в случае, если вы не можете найти libv8-dev
или libv8-dbg
, вы можете найти правильную версию командой run
~$ apt-cache search libv8 libv8-3.14-dbg - V8 JavaScript engine - debugging symbols libv8-3.14-dev - V8 JavaScript engine - development files for 3.14 branch libv8-3.14.5 - V8 JavaScript engine - runtime library libv8-dev - V8 JavaScript engine - development files for latest branch
то вы можете запустить
~$ sudo apt-get install libv8-3.14-dev libv8-3.14-dbg g++ cpp
то вы можете попробовать установить v8js через pecl, выполнив
~$ sudo pecl install v8js-0.2.0
если эта команда возвращает ошибку, подобную этой
configure: error: libv8 must be version 3.24.6 or greater ERROR: `/tmp/pear/temp/v8js/configure --with-v8js' failed
вы можете попробовать установить v8js-0.1.3
вместо этого
~$ sudo pecl install v8js-0.1.3
затем отредактируйте свой php.ini
чтобы добавить расширение v8js
~$ echo "extension=v8js.so" >> /etc/php5/cli/php.ini
Откройте терминал / консоль
sudo apt-get install libv8-dev libv8-dbg g++ cpp
Сделать обновление sudo apt-get update
Попробуйте sudo pecl install v8js-0.2.0
(или другую версию, то есть: sudo pecl install v8js-0.1.3
)
Измените файл php.ini
(Check: Where is my php.ini? ), Добавив: extension=v8js.so
Перезапустить сервер
Если это расширение все еще не работает, попробуйте отредактировать /etc/php5/conf.d/v8js.ini
и добавьте extension=v8js.so
и снова перезапустите сервер.
Надеюсь это поможет.
Эти другие ответы хорошо работают, и я использовал v8js-0.1.3 в течение последних 1,5 лет, но после необходимости обновления до PHP 7 мне нужно было лучшее решение, поскольку v0.1.3 не компилируется с PHP 7 (что-то связано с переименованием php_smart_str на php_smart_string).
После нескольких часов разочаровывающих исследований и компиляции libv8 я не хотел проходить весь этот процесс на каждом сервере, который я предоставил.
Во всяком случае, я нашел этот сайт, который указывает вам на сайт PPA стартовой панели, который предоставляет пару различных пакетов ubuntu с библиотеками libv8 5.1 и 5.2.
Я выполнил эти команды (пожалуйста, не добавляйте репозитории сторонних разработчиков без понимания рисков).
sudo apt-add-repository ppa:pinepain/libv8-5.2 sudo apt-get update sudo apt-get install libv8-5.2-dev sudo pecl install v8js-1.1.0
(Спасибо @JeyKeu за предложение добавить «apt-get update» к этим командам)
Я не мог получить v8js-1.3.0 или 1.2.0 для сборки, но 1.1.0 работал хорошо. Я проверил журнал изменений и обнаружил, что в моих обстоятельствах последние обновления не нужны.