前言

每个人的安装环境不同,具体安装依个人而异!

1、安装之前先查看php.ini的位置,然后将扩展写入配置文件。

php -i | grep php.ini

# php --ini

# Loaded Configuration File => /usr/local/lib/php.ini

sudo cp /etc/php.ini.default /usr/local/lib/php.ini

2、修改.bash_profile,增加如下几行,这样就可以方便使用php、phpize、php-config命令了!

PATH=/usr/local/bin:$PATH

3、查找扩展的资源包

(1)pecl.php.net/

(2)github

PHP安装扩展方法

查看php.ini默认的扩展和编译安装时启动的配置项是对应的。如果需要启动某个扩展可以尝试以下方案:

(1)编译安装PHP的时候启动配置项,前提是配置项支持!

(2)下载对应扩展的资源包然后自己编译安装

(3)找到原安装PHP的资源目录,然后cd到ext及对应的扩展下编译安装。举例:

# 进入PHP-7.1版本的资源目录及扩展curl

cd /usr/local/opt/php-src/ext/curl

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

更多等待记录…

igbinary

wget http://pecl.php.net/get/igbinary-3.1.5.tgz

tar zxvf igbinary-3.1.5.tgz

cd ~/opt/igbinary-3.1.5

sudo phpize --clean && sudo make clean

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

curl

wget https://curl.haxx.se/download/curl-7.72.0.tar.gz

tar -zxvf curl-7.72.0.tar.gz && cd curl-7.72.0

./configure && sudo make && sudo make install

cd /usr/local/opt/php-src/ext/curl

phpize --with-curl=/usr/local/opt/curl

./configure --with-php-config=php-config

sudo make && sudo make install

sockets

cd /usr/local/opt/php-src/ext/sockets

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

tidy

exif

fileinfo

ftp

zip

Redis

git clone git://github.com/phpredis/phpredis.git

#git checkout xxx # 可以自己查看该资源的分支

cd ~/opt/phpredis/

phpize

./configure --with-php-config=php-config --enable-redis-igbinary

sudo make && sudo make install

Memcache

git clone git://github.com/websupport-sk/pecl-memcache

cd ~/opt/pecl-memcache

phpize

./configure --with-php-config=php-config --with-zlib-dir=/usr/local/opt/zlib

sudo make && sudo make install

Memcached

# wget http://download.tangent.org/libmemcached-1.0.18.tar.gz

# sudo tar -zxvf libmemcached-1.0.18.tar.gz

# cd libmemcached-1.0.18 && sudo ./configure && sudo make && sudo make install

git clone https://github.com/php-memcached-dev/php-memcached.git

# git clone git://github.com/php-memcached-dev/php-memcached.git

cd ~/opt/php-memcached

phpize

sudo ./configure --with-php-config=/usr/local/bin/php-config --enable-memcached --with-libmemcached-dir=/usr/local --disable-memcached-sasl --enable-memcached-igbinary

sudo make && sudo make install

configure: error: Please reinstall the pkg-config distribution

wget pkgconfig.freedesktop.org/releases/...

swoole

# git clone git://github.com/swoole/swoole-src.git

wget https://github.com/swoole/swoole-src/archive/v4.5.3.tar.gz

tar -zxvf v4.5.3.tar.gz && cd swoole-src-4.5.3

# sudo make clean && phpize --clean

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

yar

安装依赖:Curl、Json、Msgpack (Optional)

git clone https://github.com/laruence/yar.git

cd ~/opt/yar

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

mbstring

cd /usr/local/opt/php-src/ext/mbstring

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

PDO

先配置pdo.so,在配置pdo_mysql.so。

cd /usr/local/opt/php-src/ext/pdo

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

event

依赖扩展:socket

wget https://pecl.php.net/get/event-2.5.7.tgz

tar -zxvf event-2.5.7.tgz

cd ~/opt/event-2.5.7

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

mysqlnd

cd /usr/local/opt/php-src/ext/mysqlnd

sudo mv config9.m4 config.m4

phpize

export PHP_OPENSSL_DIR=yes

./configure --with-php-config=php-config

sudo make && sudo make install

mysqli

cd /usr/local/opt/php-src/ext/mysqli

phpize

./configure --with-php-config=php-config --with-mysqli=/usr/bin/mysql_config

sudo make && sudo make install

pdo_mysql

cd /usr/local/opt/php-src/ext/pdo_mysql

phpize clean && make clean

phpize

./configure --with-php-config=php-config --with-pdo-mysql=/usr/local/mysql

sudo make && sudo make install

zlib

cd /usr/local/opt/php-src/ext/zlib

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

gd

cd /usr/local/opt/php-src/ext/gd

phpize

./configure --with-php-config=php-config --with-zlib-dir=/usr/local/opt/zlib --with-jpeg-dir=/usr/local/opt/jpeg --with-webp-dir=/usr/local/opt/webp

sudo make && sudo make install

# 开发机搭建

# ./configure --with-freetype-dir=/usr/include/freetype2 --with-jpeg-dir=/usr/include

openssl

cd /usr/local/opt/php-src/ext/openssl

mv config0.m4 config.m4

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

crypto

wget https://pecl.php.net/get/crypto-0.3.1.tgz && tar -zxvf crypto-0.3.1.tgz

cd crypto-0.3.1

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

pcntl

cd /usr/local/opt/php-src/ext/pcntl

sudo phpize --clean && sudo make clean

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

php-fpm

cd /usr/local/opt/php-src/sapi/fpm/

phpize

./configure --with-php-config=php-config

写个shell脚本吧

这里是一个一个的粘贴进来,也可以定义一个关联数组。但是尝试了下shell的关联数组以字符串为下标获取不到预期的值。先绕过去再说吧,有空再弄。

#!/bin/sh

#igbinary

cd ~/opt/igbinary-3.1.5

sudo phpize --clean && sudo make clean

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

# curl

cd /usr/local/opt/php-src/ext/curl

sudo phpize --clean && sudo make clean

phpize

./configure --with-php-config=php-config

sudo make && sudo make install

# ...

本作品采用《CC 协议》,转载必须注明作者和本文链接

mac php安装mysql扩展_(MAC) PHP扩展安装相关推荐

  1. 杰奇安装 mysql失败_关于杰奇CMS安装乱码的解决方法

    最近推广学院的小说网站兴趣小组,总是有几个同学来问我,为什么安装完杰奇CMS1.70版本的系统是乱码,如下图所示: 乱码问题分析: 1.网站编码错误,可能修改文章,导致了部分文件的编码更换了 2.网站 ...

  2. python安装mysql代码_关于windows x64安装MySQL-python失败解决

    MySQL-python只是有32位系统安装包,如果下载exe或者pip安装,也会报错. 报错如下:_mysql.c() : fatal error C1083: Cannot include : : ...

  3. 服务器centos安装mysql数据库_阿里云 centos7 安装mysql数据库

    环境:阿里云ECS服务器,系统为centos7.2 删除原来的数据库: centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下: [ ...

  4. 安装mysql第三步卡死_Mysql 安装服务无法启动解决方案与使用的一般使用指令

    问题描述: 在安装mysql 时,如果第一次没安装成功,第二次重装可能出现莫名奇妙的情况.通过一番尝试,发现,安装往上的教程还是无法成功安装的主要原因是第一次安装虽然未成功,但是mysql 默认的33 ...

  5. mac 偏好设置mysql不小心删除了_Mac 安装配置mysql,误删除local下的var和tmp文件夹该如何解决?...

    mac 上安装Mysql试了各种方法,包括stack overflow上的答案. 大抵是如下的: 1.彻底删除mysql各个遗留文件和配置 sudo rm /usr/local/mysql sudo ...

  6. mac安装mysql后找不到_Mac安装MySQL步骤及遇到的问题

    安装 MySQL下载地址,下载好后直接安装. 打开控制台,输入mysql --version查看MySQL版本. 如果提示-bash:mysql:command not found,是因为由于系统默认 ...

  7. phpstudy mysql端口_完美解决phpstudy安装后mysql无法启动(无需删除原数据库,无需更改任何配置,无需更改端口)直接共存...

    今天学习php,当然是要先安装好运行环境了,phpstyudy是一个运行php的集成环境, 一键安装对新手很友好,与时作为一个新手,便跟着教程安装了phpstudy集成环境. 很快安装好了,嗯.对新手 ...

  8. 黑苹果能安装mysql吗_黑苹果安装 篇一:小白的黑苹果之路:系统安装思路

    黑苹果安装 篇一:小白的黑苹果之路:系统安装思路 2019-12-20 16:17:03 8点赞 99收藏 4评论 小编注:此篇文章来自即可瓜分10万金币,周边好礼达标就有,邀新任务奖励无上限,点击查 ...

  9. 如何完全安装mysql数据库_数据库经验:如何简单安装MySQL数据库

    这篇文章主要介绍了一种简单的MySQL数据库安装方法,详细内容请大家参考下文: 虽然安装MySQL数据库的文章很多,但是我看后感觉对于初学者来说都有一定的难度所以我写个简单的方法供大家参考.如果有什么 ...

  10. xshell安装mysql步骤_数据库Mysql与禅道安装

    一.Linux上搭建禅道 Mysql 是关系型数据库管理系统 1.下载安装包:将安装包直接解压到/opt目录下,不要 解压到别的目录在拷贝到/opt/,因为这样会导致文件的所有者和读写权限改变 2.解 ...

最新文章

  1. spark- PySparkSQL之PySpark解析Json集合数据
  2. linux下删除乱码文件、目录
  3. Git工作流程和rebase与合并问题
  4. V8 Design Elements(翻译)
  5. C++确定对象被使用前已先被初始化
  6. 如何编写干净流畅的Web API测试
  7. 【PhotoScan精品教程】任务一:新建工程、导入照片、设置坐标系、导入控制点(POS)、自由空三
  8. python 实现显著性检测_强!汽车车道视频检测:python+OpenCV为主实现
  9. java 画树_java – 如何绘制代表连接节点图的树?
  10. ajax获取jsp对象,如何用Ajax传递一个对象集合到jsp页面。
  11. 【emWin】例程十五:触摸校准实例——五点校准法
  12. System Verilog 线程间的通信——事件,信箱与旗语
  13. 记录‘launch_simulation‘failed due to earlier errors的一个解决方法
  14. Atitit atitit 编程语言之道补充 s22 attilax 艾龙 著 1. 程序设计是个什么概念呢?历史发展 1 1.1. 连接电缆 2 1.2. 程序内置纸带打点 2 1.3. FORT
  15. paip.mysql 性能测试by mysqlslap
  16. windows下常见的知识
  17. 软件设计师- 系统工程知识
  18. Android学习笔记--菜单
  19. 第三方登录/分享最佳实践
  20. 海绵城市工程_海绵城市工程案例详解—雨水调蓄池

热门文章

  1. 【任务脚本】2020双十一活动小结,京东活动依旧始终良心
  2. C++引用(Reference)
  3. 【火炉炼AI】机器学习007-用随机森林构建共享单车需求预测模型
  4. 【总结整理】《人人都是产品经理》---读后感
  5. rabbitmq 集群数据存储与单点故障
  6. mysql添加和root用户一样的权限
  7. form 为什么上传文件enctype现场
  8. 【iOS-cocos2d-X 游戏开发之十三】cocos2dx通过Jni调用Android的Java层代码(上)
  9. 中小企业ERP快速实施的八大准则
  10. linux共享库 == windows动态库