美文网首页
MacOS Catalina编译安装PHP7.4.0

MacOS Catalina编译安装PHP7.4.0

作者: 丁伟强 | 来源:发表于2019-12-12 14:23 被阅读0次

下载源码

下载地址https://www.php.net/distributions/php-7.4.0.tar.bz2

安装openssl

 brew install openssl

安装libiconv

下载地址http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.16.tar.gz

```

cd ~/Downloads/

tar zxvf libiconv-1.16.tar.gz

cd libiconv-1.16

./configure --prefix=/usr/local/libiconv

sudo make && make install  

```

源码编译

```

cd ~/Downloads/

tar jxvf php-7.4.0

cd php-7.4.0

export OPENSSL_CFLAGS="-I/usr/local/opt/openssl/include"

export LDFLAGS="-L/usr/local/opt/openssl/lib"

export OPENSSL_CXXFLAGS="-I/usr/local/opt/openssl/include"

export OPENSSL_LIBS="-lssl -lcrypto"

./configure --prefix=/usr/local/php74 --with-config-file-path=/usr/local/php74/etc --with-config-file-scan-dir=/usr/local/php74/etc/php.d --enable-fpm --enable-sockets --enable-mbstring --enable-soap --enable-bcmath --with-gettext=/usr/local/opt/gettext --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-pcntl --enable-opcache --with-zlib-dir=/usr/local/zlib --enable-calendar --enable-gd --with-curl --enable-sysvmsg --enable-sysvsem --enable-sysvshm --with-expat --with-openssl

```

在configure过程中,由于MacOS 用的是LibreSSL,会提示找不到openssl的库文件,所以在configure之前设定了上述的环境变量

直接make经常会碰到Undefined symbols for architecture x86_64:这样的提示,通过修改Makefile文件,大约在108行左右找到

```

EXTRA_LIBS = -lresolv -liconv -liconv -lintl -lm -lxml2 -lssl -lcrypto -lsqlite3 -lcurl -lxml2 -lz -lpng16 -lz -lonig -lsqlite3 -lxml2 -lxml2 -lexpat -lx ml2 -lxml2 -lssl -lcrypto

```

把-liconv 替换成 /usr/local/lib/libiconv.dylib这样的绝对路径,-lssl -lcrypto 也似类替换

sudo make & make install

到这里应该能编译完成安装php7.4了

php.ini配置此处省略

相关文章

网友评论

      本文标题:MacOS Catalina编译安装PHP7.4.0

      本文链接:https://www.haomeiwen.com/subject/amqtnctx.html