obeckham 发表于 2015-8-27 11:24:49

编译安装PHP 时遇到问题解决方法.

  环境:centos X64 最小化安装
  php版本:php-5.4.3
  安装前.先安装些软件和库文件
  yum install -y gcc gcc-c++make zlib zlib-devel pcre pcre-devellibjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
  领导要我们自己手动装 不允许我们直接用yum 所以上面的都没执行
  编译安装PHP
  进入php的解压目录
  ./configure --prefix=/usr/local/php --enable-fpm--with-mcrypt=/usr/local/libmcrypt --with-zlib --enable-mbstring --with-openssl --with-mysql --with-mysqli --with-mysql-sock --with-gd --with-jpeg-dir=/usr/lib --enable-gd-native-ttf--enable-pdo --with-pdo-mysql --with-gettext --with-curl --with-pdo-mysql --enable-sockets --enable-bcmath --enable-xml --with-bz2 --enable-zip --enable-freetype
  运行之后遇到的问题:
  error 1
  checking for xml2-config path...
configure: error: xml2-config not found. Please check your libxml2 installation.
  (看提示就明白 是一个lib库没装先用 yum search 名字 看是否能搜到名字 ,找到名字后 把软件包 开发包装上)
  解决办法
  yum install libxml2-devel.x86_64
  error 2
  checking for pkg-config... /usr/bin/pkg-config
configure: error: Cannot find OpenSSL's <evp.h>
  这是ssl没装
  解决办法
   yuminstallopenssl.x86_64 openssl-devel.x86_64 -y
  error 3
  checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution
  这是bzip2软件包没有安装
  解决办法
  yum install bzip2-devel.x86_64 -y
  error 4
  configure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/
  curl和curl库文件没有安装
  解决办法
  yum install libcurl.x86_64 libcurl-devel.x86_64 -y
  error 5
  checking whether to enable JIS-mapped Japanese font support in GD... no
checking for fabsf... yes
checking for floorf... yes
configure: error: jpeglib.h not found
  GD库没有安装
  解决办法
  yum install libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 -y
  error 6
  checking for stdarg.h... (cached) yes
checking for mcrypt support... yes
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
  libmcrypt库没有安装 ,要是不能用yun安装的话就要去下载个gz包 自己编译安装
  (编译安装./configure --piefix=/usr/local/libmcrypt   make && make install)
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  要是错误里面含有mysql的那是mysql-devel 没有安装
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  出现
  Generating files configure: creating ./config.status creating main/internal_functions.c creating main/internal_functions_cli.c
  +--------------------------------------------------------------------+
  | License:                                                         |
  | This software is subject to the PHP License, available in this   |
  | distribution in the file LICENSE.By continuing this installation |
  | process, you are bound by the terms of this license agreement.   |
  | If you do not agree with the terms of this license, you must abort |
  | the installation process at this point.                            |
  +--------------------------------------------------------------------+
  Thank you for using PHP.
  config.status: creating php5.spec
  config.status: creating main/build-defs.h
  config.status: creating scripts/phpize
  config.status: creating scripts/man1/phpize.1
  config.status: creating scripts/php-config
  config.status: creating scripts/man1/php-config.1
  config.status: creating sapi/cli/php.1
  config.status: creating sapi/fpm/php-fpm.conf
  config.status: creating sapi/fpm/init.d.php-fpm
  config.status: creating sapi/fpm/php-fpm.8
  config.status: creating sapi/fpm/status.html
  config.status: creating main/php_config.h
  config.status: executing default commands
  表示安装成功
  make&& make install
  make完成之后到php的解压目录 找出php.ini-production 复制到 /usr/local/php/lib/ 下 文件名改成php.ini
  cp php.ini-production /usr/local/php/lib/php.ini
  完成..
  PS:不知道美国那边的源是不是好一些 很多的包 在中国需要手动下载在美国的服务器上 能直接用yum.......
页: [1]
查看完整版本: 编译安装PHP 时遇到问题解决方法.