На прошлой неделе мы говорили о Laravel Homestead, подготовленной локальной среде разработки для PHP, построенной на Vagrant Тейлором Отвеллом, призванной служить общей отправной точкой для всех проектов Laravel (и, возможно, других PHP). Если вы пропустили этот пост, я рекомендую вам прочитать его и ознакомиться с Homestead в качестве следующей стартовой среды.
За неделю до этого мы говорили об окончании бета-версии для 5.6 и начале программы RC. Команда разработчиков ядра PHP поощряет людей поиграть и протестировать RC-версии, а также предоставить им обратную связь по сборке, чтобы они могли собрать некоторую статистику использования и возможные ошибки сборки для исправления в следующем выпуске. PHP 5.6 RC1 был выпущен несколько дней назад и может быть загружен .
В этом посте мы кратко рассмотрим, как мы можем установить его поверх обычного PHP в Laravel Homestead, и сообщим отзывы о сборке обратно на сайт QA.
Настроить
Чтобы подготовиться, пожалуйста, прочитайте оригинальную статью Homestead и следуйте ей до буквы, пока у вас не заработает работающая виртуальная машина.
Затем вставьте SSH в вашу виртуальную vagrant ssh
запустив vagrant ssh
. Попав внутрь, загрузите последний источник через wget, вот так:
wget http : //downloads.php.net/tyrael/php-5.6.0RC1.tar.bz2
В зависимости от того, когда вы читаете это, ссылка может отличаться из-за того, что другие RC уже отсутствуют. Затем распакуйте загруженный архив и измените каталог на вновь созданный.
tar xvfj php - 5.6 . 0RC1.tar . bz2 cd php - 5.6 . 0RC1
Предпосылки
Чтобы построить PHP из исходного кода в его самой простой форме, есть одна зависимость, которая нам абсолютно необходима. Запустите следующую команду:
sudo apt - get install libxml2 libxml2 - dev
Возможно, вам придется запустить sudo apt-get update
если вы получите сообщение об ошибке относительно IP-адреса, с которого Aptitude пытается извлечь libxml2-dev. Затем повторите команду выше (см. Рисунок ниже). Далее запустите:
./ configure -- enable - fpm
Нам нужно включить FPM, потому что Homestead PHP построен как FPM, а Nginx использует его как таковой. Если мы хотим заменить установленный Homestead PHP своим собственным, нам нужно включить -fpm перед компиляцией.
Компиляция и тестирование
Чтобы скомпилировать PHP из исходного кода после запуска команды configure, мы запускаем
make
make
скомпилирует PHP из исходного кода и сообщит о любых найденных ошибках. Это может занять некоторое время в зависимости от вашей вычислительной мощности.
После завершения процесса компиляции выполните:
make test
Эта команда будет запускать тесты для скомпилированного PHP и может занять некоторое время в зависимости от значений конфигурации и мощности вашей виртуальной машины и хост-компьютера. Все основные функциональные возможности PHP будут протестированы и по окончании будут отправлены в штаб-квартиру, если вы того пожелаете — пожалуйста, сделайте так, эти отчеты помогут основной группе разработчиков точно определить проблемы до того, как они возникнут в рабочих выпусках. Процесс отправки является ненадежным, и при указании вашего адреса электронной почты нет диалогового окна подтверждения, поэтому будьте осторожны, чтобы написать его правильно в первый и единственный раз — см. Рисунок ниже.
Установка
Установить скомпилированный PHP так же просто, как запустить
sudo make install
после чего все необходимые двоичные файлы должны быть скопированы в соответствующие папки. Есть еще один последний шаг, который вы должны сделать, прежде чем новый PHP активируется — перезапустите PHP-FPM. Это делается с помощью:
sudo / etc / init . d / php5 - fpm restart
Запуск php --version
теперь должен дать следующий результат:
Другие способы помочь
Хотя сборка и установка RC1 в Homestead была сугубо «эгоистичной», то есть мы можем использовать ее и поиграть с ней, но мы можем еще больше повысить самоотверженность, предоставляя отчеты об испытаниях с других платформ и с другими значениями конфигурации , тоже.
Например, взгляните на различные значения конфигурации, которые вы можете изменить для создания разных скомпилированных версий PHP, а затем отправьте результаты теста этих итераций. Попробуйте загрузить другую ОС на другой виртуальной машине, а не на Homestead, и установите там RC1 — они ищут результаты тестирования для разных операционных систем, от Windows до CentOS и других.
Наконец, поиграйте с RC1, протестируйте новые функции и сообщите о найденных ошибках. Давайте работать вместе и сделаем следующую версию PHP еще лучшей.