Как установить V8js на PHP5.5?

Я хочу установить расширение 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 
  1. Откройте терминал / консоль

  2. sudo apt-get install libv8-dev libv8-dbg g++ cpp

  3. Сделать обновление sudo apt-get update

  4. Попробуйте sudo pecl install v8js-0.2.0 (или другую версию, то есть: sudo pecl install v8js-0.1.3 )

  5. Измените файл php.ini (Check: Where is my php.ini? ), Добавив: extension=v8js.so

  6. Перезапустить сервер

Если это расширение все еще не работает, попробуйте отредактировать /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 работал хорошо. Я проверил журнал изменений и обнаружил, что в моих обстоятельствах последние обновления не нужны.