`
王之子
  • 浏览: 109458 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

CentOS 用 phpize 安装 PHP 扩展出现 Can't find PHP headers in /usr/include/php 原因

阅读更多

因为要在 CentOS 用 PHP 操作 Oracle 数据库,要安装新的 PHP 扩展 oci8 。

关于安装 PHP 扩展,以前总以为要重新编译 PHP,今天查阅大量资料发现原来可以像apache模块一样动态扩展。今天就以 oci8 举例。

 

一、进入要安装的扩展的源码目录(没有就到官方下载源代码)

# cd /root/php-5.5.35/ext/oci8

运行 phpize ,如果不知道 phpize 在哪个目录,可以运行 # which phpize  命令



 
# /usr/bin/phpize   # 这一步可能会出现以下错误


 
按照字面的意思,可能是你没安装 php-devel 这个扩展包。phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块,phpize 是属于php-devel的内容,所以只要运行yum install php-devel 就行

# yum install php-devel   # 却出现以下提示


 
这说明仓库里默认的 phpize 和 PHP 版本不一致。从下面的命令可以看出:php-devel 版本是 5.3.3 。这就需要我们重新安装 phpize 。
 

 

 

安装与当前 PHP 版本一致的 php-devel 。PHP 版本可以通过 php -v 查看。



 
所以安装与当前系统 PHP 对应的 php-devel 就可以了。运行 yum install php55w-devel 出现以下信息,安装成功。

 

二、运行 /usr/bin/phpize 出现以下信息,说明可以了。

 

# ./configure --with-php-config=/usr/bin/php-config
# make 

# make install
 

安装完后会有这样的东西,Installing shared extensions: /usr/lib64/php/modules 。说明系统已经默认把 oci8.so 模块安装在 /usr/lib64/php/modules 目录中了。



 

三,修改php.ini

# vi /etc/php.ini


 
由于我的 CentOS 里 PHP 是以这种方式扩展模块。所以只需在 /etc/php.d 里面添加相应的文件就可以了。


 
关于PHP扩展,可以通过 phpinfo(); 来查看。


 


四、重启 Apache

 
  • 大小: 196.4 KB
  • 大小: 49.3 KB
  • 大小: 2 KB
  • 大小: 2.5 KB
  • 大小: 215.1 KB
  • 大小: 227.4 KB
  • 大小: 63.2 KB
  • 大小: 92.9 KB
  • 大小: 379.5 KB
  • 大小: 202.1 KB
  • 大小: 389.7 KB
  • 大小: 239.2 KB
  • 大小: 215 KB
分享到:
评论

相关推荐

    CentOs下安装PHP扩展 curl

    1. **检查PHP版本和已安装扩展** 在开始安装之前,我们需要确认当前PHP的版本以及已安装的扩展。打开终端,输入以下命令: ``` php -v ``` 这将显示PHP的版本信息和已安装的扩展。如果cURL不在列表中,那么我们...

    解决Can’t locate ExtUtils/MakeMaker.pm in @INC报错

    Can’t locate ExtUtils/MakeMaker.pm in @INC (@INC contains: inc /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5

    linux php开启openssl拓展报错时候替换本机的openssl文件夹

    出现以下报错,替换/usr/local/include/openssl里面的文件之后编译成功。add_assoc_name_entry’:/data/src/php-5.6.23/ext/openssl/openssl.c:664: warning: ‘ASN1_STRING_data’ is deprecated (declared at /usr...

    centos源码安装php-8.1.1+phpredis-4.2.0

    CentOS 源码安装 PHP 8.1.1 + PHPRedis 4.2.0 在本文中,我们将详细介绍如何在 CentOS 操作系统上从源码安装 PHP 8.1.1 和 PHPRedis 4.2.0。 安装依赖项 在安装 PHP 之前,我们需要安装一些依赖项。使用以下命令...

    centos下php安装pgsql和pdo_pgsql扩展,这是另一种方法,很简便,用.so文件来安装

    在本教程中,我们将探讨一种简便的方法,通过使用.so库文件直接安装这些扩展。 首先,.so文件是Linux下的动态链接库文件,它们包含了可被多个程序共享的代码和数据。在PHP中,这些扩展通常以.so文件的形式存在,供...

    centos系统php 5.6对应的mongo.so下载及源码

    centos系统php 5.6对应的mongo.so下载及...命令执行完之后 出现的路径复制下来编辑 /usr/local/php/etc/php.ini extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/mongo.so 保存php.ini文件

    centos7.9离线安装PHP环境依赖

    在提供的压缩包`centos7.9 PHP环境依赖文件`中,可能包含了如`php`, `php-common`, `php-mysqlnd`, `php-xml`, `php-gd`, `php-mbstring`, `php-intl`, `php-curl`, `php-pear`, `php-xmlrpc`, `php-soap`, `...

    MySQL中报错:Can’t find file: ‘./mysql/plugin.frm’的解决方法

    在MySQL数据库操作中,有时会遇到“Can't find file: './mysql/plugin.frm'”这样的错误,这通常意味着系统无法找到或访问特定的数据库表文件。这个错误可能由多种原因引起,包括但不限于文件权限问题、数据目录迁移...

    centos安装jdk1.8时出现没有/lib/ld-linux.so.2:这个文件的原因分析

    -bash: /usr/local/jdk/jdk1.8.0_181/bin/java: /lib/ld-linux.so.2: bad ELF interpreter:...以上所述是小编给大家介绍的centos安装jdk1.8时出现没有/lib/ld-linux.so.2:这个文件,希望对大家有所帮助,如果大家有任何

    linux下PHP扩展的安装(curl)

    本文主要讲解如何在CentOS上安装PHP的curl扩展,这是一个用于处理URL并支持多种协议的强大的客户端URL传输库。 1. 安装curl库 在安装PHP的curl扩展之前,首先需要确保系统已经安装了curl库。可以通过以下命令下载并...

    Centos环境下安装curl

    - 如果出现提示“Please reinstall the libcurl distribution – easy.h should be in <curl-dir>/include/curl/”,则需要重新安装curl-devel包: ```bash sudo yum install curl-devel -y ``` - 编译安装: ...

    CentOS6.2编译安装Apache2.4.1+MySQL5.5.21+PHP5.3.10.pdf

    在本教程中,我们将深入探讨如何在 CentOS 6.2 操作系统上手动编译安装 Apache 2.4.1、MySQL 5.5.21 和 PHP 5.3.10,构建一个 LAMP (Linux + Apache + MySQL + PHP) 环境。这个过程分为多个步骤,包括系统环境的准备...

    CentOS下php安装mcrypt扩展

    CentOS下php安装mcrypt扩展需要的三个安装包,需要重新编译,请大家参考 libmcrypt-2.5.8.tar mcrypt-2.6.7-win32 mcrypt-2.6.8.tar mhash-0.9.9.9.tar

    PHP5.6版本安装redis扩展(内附扩展包文件)

    在PHP5.6版本中,为了充分利用Redis的功能,我们需要安装并配置PHP的Redis扩展。以下是一个详细的步骤指南,帮助您完成这个过程。 首先,了解Redis扩展的作用。Redis扩展为PHP提供了一个接口,允许开发者直接在PHP...

    postgresql14加postgis3.2在centos离线编译安装

    在Linux环境中,特别是CentOS操作系统上,离线安装软件包是一项常见的需求,特别是在没有网络连接或者网络环境受限的服务器上。本教程将详细介绍如何在CentOS系统上离线编译安装PostgreSQL 14和PostGIS 3.2,这两个...

    CentOS安装Redis和phpRedis扩展记录

    在本主题中,我们将深入探讨如何在CentOS操作系统上安装Redis服务器,并且集成phpRedis扩展,以便在PHP应用中利用Redis作为持久化数据存储和会话管理。首先,让我们了解Redis的基本概念,然后逐步讲解安装过程。 ...

    php-5.6.29.tar.gz

    编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --...

    redis安装遇到的问题——linux centos7.5

    Redis 安装遇到的问题——Linux Centos7.5 Redis 是一个开源的、基于内存的数据结构存储系统,常用于数据库、缓存、消息队列等场景。但是,在 Linux Centos7.5 环境中安装 Redis 时可能会遇到一些问题,这篇文章将...

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

    ### CentOS 7.0 编译安装 Nginx1.6.0 + MySQL5.6.19 + PHP5.5.14 #### 一、环境准备与配置 在开始部署 LNMP(Linux+Nginx+MySQL+PHP)环境之前,首先需要对 CentOS 7.0 系统进行必要的环境配置。 **1. 配置防火墙...

Global site tag (gtag.js) - Google Analytics