mac 下编译php

自带的apache切换php版本的时候一直都没有实现,索性就直接php-fpm/nginx来搞了。

想到以后要搞php扩展,也就不brew了,直接自己编译,但是中间确实碰到了一些麻烦,现在终于编译成功了。

其中最麻烦的是把mysql-driver编译进去,这里简单记录下,我的php版本是5.6.18

 

编译参数为

'./configure' '--enable-fpm' '--without-iconv' '--with-mysql=/usr/local/mysql/' '--enable-opcache=no' '--with-mysqli=/usr/local/mysql/bin/mysql_config' '--with-zlib-dir=/usr/local/opt/zlib' 'LIBS=-lresolv'

 

最开始的时候mysql部分一直有问题

Undefined symbols for architecture x86_64:
  "_res_9_init", referenced from:
      _zif_dns_check_record in dns.o
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
  "_res_9_search", referenced from:
      _zif_dns_check_record in dns.o
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
  "_res_9_dn_skipname", referenced from:
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
  "_res_9_dn_expand", referenced from:
      _php_parserr in dns.o
      _zif_dns_get_mx in dns.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

网上翻了下资料,大概是mysql-driver这个的一个在mac下的bug造成,后来按照这篇文章的描述高了一下.
http://stackoverflow.com/questions/11456965/compiling-php-from-source-fails-on-mac-mini-lion-server,还真成功了。
posted @ 2016-08-20 10:21  宁波男孩  阅读(201)  评论(0)    收藏  举报