Preferences → Downloads → Command Line Toolshttpd-2.2.27.tar.gz、php-5.5.12.tar.gzcd httpd-2.2.27
./configure --prefix=/Users/levin/dev/apache2.2.27 \
--enable-modules=most \
--enable-mods-shared=all
make && make install
錯誤:C compiler cannot create executables,路徑指向不存在的 OSX10.8.xctoolchain。
修復:
cd /Applications/Xcode.app/Contents/Developer/Toolchains sudo ln -s XcodeDefault.xctoolchain OSX10.8.xctoolchain
cd php-5.5.12
./configure --prefix=/Users/levin/dev/php5.5.12 \
--with-apxs2=/Users/levin/dev/apache2.2.27/bin/apxs \
--with-config-file-path=/Users/levin/dev/php5.5.12/etc \
--with-openssl --with-zlib --enable-bcmath --with-bz2 --with-curl \
--enable-ftp --with-gd --enable-gd-native-ttf --with-mhash \
--enable-mbstring --enable-soap --enable-zip --enable-sockets \
--with-mysql=/usr/local/mysql-5.6.12-osx10.7-x86_64 \
--with-mysqli=/usr/local/mysql-5.6.12-osx10.7-x86_64/bin/mysql_config \
--with-iconv --with-pear --enable-opcache
make
錯誤 1:Undefined symbols: _res_9_init ...
export LDFLAGS=-lresolv
錯誤 2:dyld: Library not loaded: libmysqlclient.18.dylib
cd /usr/lib sudo ln -s /usr/local/mysql-5.6.12-osx10.7-x86_64/lib/libmysqlclient.18.dylib .
重新編譯:
make clean && make && make install
php.ini-development 到 /Users/levin/dev/php5.5.12/etc/php.ini 並按需修改。httpd.conf:調整 Listen、User/Group、ServerName、啟用 mod_deflate (gzip)。/Users/levin/dev/apache2.2.27/bin/apachectl start編譯過程約 5-10 分鐘,建議先泡杯咖啡。生產環境推薦使用 Homebrew (brew install httpd php) 管理版本與依賴,僅在需要特定版本/參數時手動編譯。