一般来说php安装扩展需要几下几个步骤

 
1.下载扩展包 
  比如  pdo_mysql.tar.gz 
(如果不想下载,可以到php安装目录,(类似php-5.3.3/ext/)的ext文件中找一下,如果有扩展文件就不需要下载了     最好使用php的安装目录里的扩展插件,和php版本比较匹配,一定要注意这点)
 
2.解压  tar -zxvf  pdo_mysql.tar.gz 
 
3.进入解压后的目录
   cd  pdo_mysql 
4.执行 phpize
   (phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块)
   (当php编译完成后,php的bin目录下会有phpize这个脚本文件)
  在解压后的目录中,执行 
    /usr/local/php/bin/phpize        (找自己的php安装目录,一定注意)

为什么要使用phpize命令呢?因为当我们需要再添加一些模块,但是又不想重新编译php时,这时我们就可以使用phpize命令。

注意:phpize命令根据php的安装位置来决定,我这个php安装时使用默认安装位置。

 
 
5../configure    make    make install
 
./configure –with-php-config=/usr/local/webserver/php/bin/php-config

注意
./configure 后面可以指定的是php-config文件的路径,如果一台服务器上安装有多个php(遇到过),一定要选择正确
         的php-config文件,否则容易出错

make

make install

 
如果没有报错,make install 后,它告诉你一个目录(下列红字)
 
[root@localhost imagick-3.4.0RC4]# make install
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
Installing header files:          /usr/local/php/include/php/
 

你把该目录下的xxxx.so拷贝到你php.ini中的extension_dir指向的目录中。

这样编译就完成了,还需要做的是在php.ini文件中加入extension值
extension = “xxxx.so”
 
 
 
 
或者直接修改配置文件php.ini   
添加  程序安装结束时 给你的路径  一般如下(红字)
 
修改配置文件 增加
extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xxxx.so
全部完成
 
 
 
 
 
如果全部完成后没有出现插件,可以先使用 php -m  查看扩展插件情况,看是否有报错,比如
 
]# /usr/local/php/bin/php -m
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-zts-20090626/zip.so' - /usr/local/php/lib/php/extensions/no-debug-zts-20090626/zip.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  PHP Startup: mcrypt: Unable to initialize module
Module compiled with build ID=API20090626,NTS
PHP    compiled with build ID=API20090626,TS
These options need to match
 in Unknown on line 0
[PHP Modules]
calendar
Core
ctype
date
dom
ereg
fileinfo
filter
gd
hash
iconv
json
libxml
mbstring
mysql
oci8
openssl
pcre
PDO
pdo_mysql
PDO_OCI
pdo_sqlite
Phar
posix
redis
Reflection
session
SimpleXML
soap
SPL
SQLite
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
zlib
 
[Zend Modules]
 
 
 
        前边的报错信息提示,没有安装成功,看了一下我的服务器上有两个 php,刚开始装时装错了,所以后面再重复安装都是一样报错。
        解决方法:
         我重新进入php扩展目录 php-5.3.3/ext/xxx  
        使用  make clean   命令
    清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。
 
   再重新 ./configure --with-php-config=/usr/local/php/bin/php-config    (我的php安装路径中的 php-config)
          make
          make install 
……
 
         

最新文章

  1. option(recompile)
  2. 从分布式一致性谈到CAP理论、BASE理论
  3. java-获取随机字符串
  4. C# 文件操作(上传,下载,读取,写入)
  5. 杂谈SharpDx中的WIC组件——我们需要WIC的图片编码功能么?
  6. codeforces 442B B. Andrey and Problem(贪心)
  7. php获取在线xml的数据
  8. [转载]求平方根sqrt()函数的底层算法效率问题
  9. 2011 Asia Fuzhou Regional Contest
  10. 【Qt】Qt之自定义界面(窗体缩放)【转】
  11. 使用logback.xml配置来实现日志文件输出
  12. python 中函数的参数
  13. Opensuse13.2开启ssh
  14. ACdream原创群赛(18)のAK's dream题解
  15. 使用VsCode编写和调试.NET Core项目
  16. public static void main(string[] args)解释
  17. Firefox配置文件夹详解
  18. django处理cookie的机制
  19. NVIDIA Titan Xp Star Wars Collector's Edition显卡深度学习工作站 + Ubuntu17.10 + Tensorflow-gpu + Anaconda3 + Python 3.6 设置
  20. 存储器结构、cache、DMA架构分析--【原创】

热门文章

  1. stormzhangB站直播之总结
  2. Please verify that your device’s clock is properly set, and that your signing certificate is not expired.
  3. 5.JavaSE之数据类型详解
  4. Windows和Linux换行的区别
  5. vijos 小胖守皇宫
  6. GP工作室—团队项目总结
  7. C语言的安装及使用
  8. 2016 CCPC-Final-Wash(优先队列+贪心)
  9. centos7.6+python3+apache2.4+django2.1.2网站部署总结
  10. Nodejs实战系列:数据加密与crypto模块