Установка PHP 5.3 на OS X Lion
После установки OS X Lion (10.7) столкнулся с неприятной проблемой, установка связки PHP+MySQL как я делал это раньше не работает. И как оказалось, проблема в MySQL, исходники которого еще не готовы к новой ОС от Apple.
После некоторых размышлений и прочтений похожих проблем в интернете, я нашел для себя следующее решение.
Ставим Homebrew — это очень простое занятие, достаточно запустить в консоли
ruby -e "$(curl -fsSLk https://gist.github.com/raw/323731/install_homebrew.rb)"
и после этого назначить права доступа
sudo chown -R $USER:staff /usr/local
Для того чтобы обновлять пакеты нужно поставить git
brew install git
После этого все обновления происходят через команду
brew update
Теперь же начинается все самое интересное, потому что ставить MySQL мы не будем из исходников, мы возьмем бинарную версию Mac OS X 10.6 (x86, 64-bit), DMG установим ее и немного настроим:
ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
ln -s /usr/local/mysql/bin/mysqld_safe /usr/local/bin/mysqld_safe
ln -s /usr/local/mysql/bin/mysqld /usr/local/bin/mysqld
ln -s /usr/local/mysql/bin/mysqldump /usr/local/bin/mysqldump
ln -s /usr/local/mysql/scripts/mysql_install_db /usr/local/bin/mysql_install_db
Лучше всего сделать симлинки для всех бинарников MySQL, но разумеется это не обязательно. Что ж, запускаем
sudo mysql_install_db
sudo mysqld_safe
Теперь можно продолжить установку по старой схеме, ставим оставшиеся пакеты
brew install libjpeg
brew install gmp
brew install mcrypt
brew install libmcrypt
brew install gettext
brew install icu4c
brew install libxml2
Остается дело за конфигурацией и установкой PHP, берем последнюю версию с сайта, на момент написания статьи была версия 5.3.6, распаковываем и начинаем конфигурацию
env EXTRA_LIBS="-lstdc++" ./configure --prefix=/usr/local/php
--with-apxs2=/usr/sbin/apxs
--with-layout=GNU
--enable-calendar
--enable-ftp
--enable-bcmath
--enable-mbstring
--enable-mbregex
--with-icu-dir=/usr/local/Cellar/icu4c/4.4.1
--enable-intl
--enable-cli
--enable-sockets
--enable-soap
--with-gettext=/usr/local/Cellar/gettext/0.18.1.1
--with-bz2
--with-zlib
--enable-zip
--with-gd
--with-jpeg-dir
--with-png-dir=/usr/X11
--with-xpm-dir
--with-freetype-dir=/usr/X11
--enable-exif
--with-gmp
--with-mcrypt
--with-mysql=mysqlnd
--with-pdo-mysql=mysqlnd
--with-mysql-sock=/tmp/mysql.sock
--with-curl
--with-openssl
--with-libxml-dir=/usr/local/Cellar/libxml2/2.7.8
--with-xsl=/usr
--with-xmlrpc
--enable-sqlite-utf8
--enable-shmop
--enable-pcntl
--enable-sysvmsg
--enable-sysvsem
--enable-sysvshm
ну а далее как обычно
make
sudo make install
А теперь начинаем наслаждаться свеже-установленной системой ;)