将 PHP 从源代码安装到 CentOS 6.4 时遇到困难

将 PHP 从源代码安装到 CentOS 6.4 时遇到困难

问题:

从源代码安装 PHP 后,功能不存在 - 我的 phpinfo 测试页无法工作。如果我使用 yum 从存储库安装,功能就会恢复。

我为什么要这样做:

最终我想添加 ImageMagick/MagickWand 功能。显然 MagickWand 需要使用 PHP 进行编译,而我发现其他说明对我来说并不成功。

我尝试过的:

我发现的每一个资源都相当简单,但没有任何内容真正解决如果此过程失败该怎么办:

  1. 获得您想要的分布。我已经尝试了最新的(5.5.1)和CentOS存储库中的内容(5.3.3)
  2. 获取先决条件 - 大多数参考 libxml2-devel,一些 httpd-devel 和 gcc。
  3. ./configure --包含特定于您的构建的内容(有所不同)
  4. 制作 && 制作安装
  5. 将 php.ini 从源文件夹放入 /etc/
  6. 重新启动 httpd。

我在此过程中观察到的几个文档示例:

http://benramsey.com/blog/2012/03/build-php-54-on-centos-62/ http://www.thegeekstuff.com/2008/07/instruction-guide-to-install-php5-from-source-on-linux/

我不确定我做错了什么但老实说,我不经常从源头工作。我觉得我错过了一个不成文的常数。有什么建议吗?我将能够根据需要提供任何其他信息。

答案1

从源代码安装是非常糟糕的做法。您所需要的只是安装IUS 社区仓库

摘抄

IUS 社区项目旨在为 PHP、Python、MySQL 和其他专门针对 Redhat Enterprise Linux 的通用软件的最新上游版本提供最新且定期维护的 RPM 软件包。当您需要时,IUS 可以被认为是升级 RHEL 的更好方法。

您可以按如下方式将存储库添加到yum

# rpm --import http://dl.iuscommunity.org/pub/ius/IUS-COMMUNITY-GPG-KEY

# rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/epel-release-6-5.noarch.rpm
# rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/ius-release-1.0-11.ius.el6.noarch.rpm

然后安装必要的包

# yum search --enablerepo=ius-testing php55u
php55u-debuginfo.x86_64 : Debug information for package php55u
php55u.x86_64 : PHP scripting language for creating dynamic web sites
php55u-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php55u-cli.x86_64 : Command-line interface for PHP
php55u-common.x86_64 : Common files for PHP
php55u-dba.x86_64 : A database abstraction layer module for PHP applications
php55u-devel.x86_64 : Files needed for building PHP extensions
php55u-embedded.x86_64 : PHP library for embedding in applications
php55u-enchant.x86_64 : Human Language and Character Encoding Support
php55u-fpm.x86_64 : PHP FastCGI Process Manager
php55u-gd.x86_64 : A module for PHP applications for using the gd graphics library
php55u-gmp.x86_64 : A module for PHP applications for using the GNU MP library
php55u-imap.x86_64 : A module for PHP applications that use IMAP
php55u-interbase.x86_64 : A module for PHP applications that use Interbase/Firebird databases
php55u-intl.x86_64 : Internationalization extension for PHP applications
php55u-ldap.x86_64 : A module for PHP applications that use LDAP
php55u-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
php55u-mcrypt.x86_64 : Standard PHP module provides mcrypt library support
php55u-mssql.x86_64 : MSSQL database module for PHP
php55u-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases
php55u-odbc.x86_64 : A module for PHP applications that use ODBC databases
php55u-opcache.x86_64 : The Zend OPcache
php55u-pdo.x86_64 : A database access abstraction module for PHP applications
php55u-pear.noarch : PHP Extension and Application Repository framework
php55u-pgsql.x86_64 : A PostgreSQL database module for PHP
php55u-process.x86_64 : Modules for PHP script using system process interfaces
php55u-pspell.x86_64 : A module for PHP applications for using pspell interfaces
php55u-recode.x86_64 : A module for PHP applications for using the recode library
php55u-snmp.x86_64 : A module for PHP applications that query SNMP-managed devices
php55u-soap.x86_64 : A module for PHP applications that use the SOAP protocol
php55u-tidy.x86_64 : Standard PHP module provides tidy library support
php55u-xml.x86_64 : A module for PHP applications which use XML
php55u-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol

相关内容