php安装
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql --with-mysqli --with-pdo-mysql --with-apxs2=/usr/sbin/apxs --with-gd --with-jpeg-dir --with-png-dir --enable-mbstring --enable-xml --with-xpm-dir=/usr --enable-fpm --with-freetype-dir --with-mcrypt --with-mhash --with-gettext --enable-pdo --with-libxml-dir --with-zlib-dir
make
make install
报错1:
configure: error: jpeglib.h not found.
解决方案如下:
[root@cac3 php-5.6.40]# rpm -qa | grep libjpeg-turbo
libjpeg-turbo-1.2.1-1.el6.x86_64
[root@cac3 php-5.6.22]# rpm -ivh libjpeg-turbo-devel
报错2:
configure: error: png.h not found.
解决方案如下:
[root@localhost php-5.6.40]# rpm -qa | grep libpng
libpng-1.2.49-1.el6_2.x86_64
[root@localhost php-5.6.40]# rpm -ivh ../libpng-devel-1.2.49-1.el6_2.x86_64.rpm
报错3:
configure: error: xpm.h not found.
解决方案如下:
[root@localhost ch]# rpm -qa libXpm
libXpm-3.5.10-2.el6.x86_64
[root@localhost php-5.6.40]# rpm -ivh libXpm-devel-3.5.10-2.el6.x86_64.rpm
如果出现下面形式的报错。 请安装lib**对应的包(例如pkgconfig(x11) 安装libX11-devel)
pkgconfig(x11) is needed by libXpm-devel-3.5.10-2.el6.x86_64
pkgconfig(kbproto) is needed by libX11-devel-1.5.0-4.el6.x86_64
pkgconfig(xcb) is needed by libX11-devel-1.5.0-4.el6.x86_64
pkgconfig(xcb) >= 1.1.92 is needed by libX11-devel-1.5.0-4.el6.x86_64
pkgconfig(xproto) is needed by libX11-devel-1.5.0-4.el6.x86_64
报错4:
configure: error: freetype-config not found.
解决方案如下:
[root@localhost ch]# rpm -qa freetype
freetype-2.3.11-14.el6_3.1.x86_64
[root@localhost php-5.6.40]# rpm -ivh ../freetype-devel
报错5:
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决方案如下:
下载libmcrypt-2.5.7.tar.gz
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
安装:
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
mkdir -p /usr/local/libmcrytp
./configure --prefix=/usr/local/libmcrytp/
make
make install
然后将--with-mcrypt=/usr/local/libmcrypt后在编译安装php,
报错6:
在make的时候报错
ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_ctor':
/home/king/php-5.2.13/ext/iconv/iconv.c:2491: undefined reference to `libiconv_open'
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
[root@test php-5.2.13]# vi Makefile
在安裝 PHP 到系统中时要是发生「undefined reference to libiconv_open'」之类的错误信息,那表示在「./configure 」沒抓好一些环境变数值。错误发生点在建立「-o sapi/cli/php」是出错,没給到要 link 的 iconv 函式库参数。 解决方法:编辑Makefile 大约77 行左右的地方: EXTRA_LIBS = ..... -lcrypt 在最后加上 -liconv,例如: EXTRA_LIBS = ..... -lcrypt -liconv 然后重新再次 make 即可。
或者用另一种办法
make ZEND_EXTRA_LIBS='-liconv'
ln -s /usr/local/lib/libiconv.so.2 /usr/lib64/
解决方案2:
安装libiconv 到/usr/local/libiconv
编译中增加 --with-iconv=/usr/local/libiconv
报错7:
因为我写的mysql位置的路径发生错误,和实际工作路径不符.
# which mysql
/usr/bin/mysql
mysql的路径与实际工作路径替换/usr/bin/mysql.
报错8:
configure: error: Please reinstall the iconv library.
解决方案如下:
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar xvzf libiconv-1.14.tar.gz
./configure
make && make install
报错9
configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no
解决方法一:
最后查看php官方文档解决. 在configure 里面加上 --with-libdir=lib64
解决方法二:
编辑/etc/ld.so.conf
根据系统,加入include /etc/ld.so.conf,
然后执行ldconfig,使其重新加载一次;(如果出错改为vi /etc/ld.so.conf >> include /usr/local/libmcrytp/lib/)
报错10
configure: error: Cannot find OpenSSL's libraries
解决方案如下:
[root@localhost php-5.6.40]# locate libssl.so
/usr/local/ssl/lib/libssl.so
ln -s /usr/local/ssl/lib/libssl.so /usr/lib64
报错11
configure: error: libcrypto not found!
解决方案如下:
crypto是是OpenSSL 加密库[lib], 需要openssl-devel包。
rpm -ivh openssl-devel.****.rpm
或者--with-openssl=/usr/local/opt/openssl
报错12
configure: error: Cannot find OpenSSL's
解决方案如下:
开始以为是没有安装openssl, openssl-devel,安装后发现还是提示这个错误,搜索了一下evp.h,这个文件也存在。GOOGLE 了一下,在stackoverflow,找到了答案,原来是 phpize 生成的configure脚本有问题。
修改configure 文件加入
这个是安装mysqlnd扩展报错的
export PHP_OPENSSL_DIR=yes
1.碰到了第一个报错信息:
configure: error: Please reinstall the BZip2 distribution
解决方法:yum install bzip2 bzip2-devel //安装完这两个就搞定了
2.碰到第二个报错信息
configure: error: Unable to locate gmp.h
解决方法:yum -y install gmp-devel
3.碰到第三个报错信息
configure: error: Cannot find ldap.h
解决方法:yum -y install openldap-devel
4.碰到第四个报错信息
configure: error: Please reinstall readline - I cannot find readline.h
解决方法:yum -y install readline-devel
5.碰到第五个报错信息
configure: error: Please reinstall the libzip distribution
解决方法:
wget https://nih.at/libzip/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make
make install
6.make的时候报错
/usr/local/include/zip.h:59:21: 致命错误:zipconf.h:没有那个文件或目录
安装libzip后,拷贝
cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h
----至此编译都通过了,然后make && make install安装
制作php-frp的快捷启动方式(根据自己实际文件路径去复制粘贴)
[root@bakserver etc]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
[root@bakserver etc]# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
[root@bakserver etc]# cp /usr/src/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@bakserver etc]# cp /ISO/softs/php-7.2.8/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@bakserver etc]# chmod +x /etc/init.d/php-fpm
____安装mongodb扩展模块
试过最新的扩展模块,发现很多问题,并且很难处理,所以选择安装mongodb-1.3.4.tgz这个版本的。
# tar -xf mongodb-1.3.4.tgz
# cd mongodb-1.3.4/
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make && make install
# find / -name mongodb.so
/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/mongodb.so
# vim /usr/local/php/etc/php.ini //添加输出mongodb.so的位置
...
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/mongodb.so
...
然后重启php-fpm服务就重效了
安装好后查看测试页面如下
测试连接PHP代码:
$username='fitt77t';
$passwd='fit5774';
$host='127.0.0.1';
$port='27868';
$dbb='fitco6me7';
$mongodb = new MongoDB\Driver\Manager("mongodb://{$username}:{$passwd}@{$host}:$port/$dbb");
if($mongodb){
echo 'ok';
}else{
echo 'error';
}
?>
----------------------------------------------------摘要
configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
复制代码 代码如下:
yum -y install libxslt-devel
configure: error: Could not find net-snmp-config binary. Please check your net-snmp installation.
复制代码 代码如下:
yum -y install net-snmp-devel
configure: error: Please reinstall readline - I cannot find readline.h
复制代码 代码如下:
yum -y install readline-devel
configure: error: Cannot find pspell
复制代码 代码如下:
yum -y install aspell-devel
checking for unixODBC support... configure: error: ODBC header file '/usr/include/sqlext.h' not found!
复制代码 代码如下:
yum -y install unixODBC-devel
configure: error: Unable to detect ICU prefix or /usr/bin/icu-config failed. Please verify ICU install prefix and make sure icu-config works.
复制代码 代码如下:
yum -y install libicu-devel
configure: error: utf8mime2text() has new signature, but U8TCANONICAL is missing. This should not happen. Check config.log for additional information.
复制代码 代码如下:
yum -y install libc-client-devel
configure: error: freetype.h not found.
复制代码 代码如下:
yum -y install freetype-devel
configure: error: xpm.h not found.
复制代码 代码如下:
yum -y install libXpm-devel
configure: error: png.h not found.
复制代码 代码如下:
yum -y install libpng-devel
configure: error: vpx_codec.h not found.
复制代码 代码如下:
yum -y install libvpx-devel
configure: error: Cannot find enchant
复制代码 代码如下:
yum -y install enchant-devel
configure: error: Please reinstall the libcurl distribution - easy.h should be in /include/curl/
复制代码 代码如下:
yum -y install libcurl-devel
LAOGAO added 20140907:
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
复制代码 代码如下:
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
tar zxf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure
make && make install
added 20141003:
Cannot find imap
复制代码 代码如下:
ln -s /usr/lib64/libc-client.so /usr/lib/libc-client.so
configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing.
复制代码 代码如下:
yum -y install libc-client-devel
Cannot find ldap.h
复制代码 代码如下:
yum -y install openldap
yum -y install openldap-devel
configure: error: Cannot find ldap libraries in /usr/lib
复制代码 代码如下:
cp -frp /usr/lib64/libldap* /usr/lib/
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
复制代码 代码如下:
yum -y install postgresql-devel
configure: error: Please reinstall the lib curl distribution
复制代码 代码如下:
yum -y install curl-devel
configure: error: Could not find net-snmp-config binary. Please check your net-snmp installation.
复制代码 代码如下:
yum -y install net-snmp-devel
configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
复制代码 代码如下:
yum -y install libxslt-devel
checking for BZip2 support… yes checking for BZip2 in default path… not found configure: error: Please reinstall the BZip2 distribution
Fix:
复制代码 代码如下:
yum -y install bzip2-devel
checking for cURL support… yes checking if we should use cURL for url streams… no checking for cURL in default path… not found configure: error: Please reinstall the libcurl distribution – easy.h should be in/include/curl/
Fix:
复制代码 代码如下:
yum -y install curl-devel
checking for curl_multi_strerror in -lcurl… yes checking for QDBM support… no checking for GDBM support… no checking for NDBM support… no configure: error: DBA: Could not find necessary header file(s).
Fix:
复制代码 代码如下:
yum -y install db4-devel
checking for fabsf… yes checking for floorf… yes configure: error: jpeglib.h not found.
Fix:
复制代码 代码如下:
yum -y install libjpeg-devel
checking for fabsf… yes checking for floorf… yes checking for jpeg_read_header in -ljpeg… yes configure: error: png.h not found.
Fix:
复制代码 代码如下:
yum -y install libpng-devel
checking for png_write_image in -lpng… yes If configure fails try –with-xpm-dir=
configure: error: freetype.h not found.
Fix:
复制代码 代码如下:
Reconfigure your PHP with the following option. --with-xpm-dir=/usr
checking for png_write_image in -lpng… yes configure: error: libXpm.(a|so) not found.
Fix:
复制代码 代码如下:
yum -y install libXpm-devel
checking for bind_textdomain_codeset in -lc… yes checking for GNU MP support… yes configure: error: Unable to locate gmp.h
Fix:
复制代码 代码如下:
yum -y install gmp-devel
checking for utf8_mime2text signature… new checking for U8T_DECOMPOSE… configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.
Fix:
复制代码 代码如下:
yum -y install libc-client-devel
checking for LDAP support… yes, shared checking for LDAP Cyrus SASL support… yes configure: error: Cannot find ldap.h
Fix:
复制代码 代码如下:
yum -y install openldap-devel
checking for mysql_set_character_set in -lmysqlclient… yes checking for mysql_stmt_next_result in -lmysqlclient… no checking for Oracle Database OCI8 support… no checking for unixODBC support… configure: error: ODBC header file ‘/usr/include/sqlext.h' not found!
Fix:
复制代码 代码如下:
yum -y install unixODBC-devel
checking for PostgreSQL support for PDO… yes, shared checking for pg_config… not found configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
Fix:
复制代码 代码如下:
yum -y install postgresql-devel
checking for sqlite 3 support for PDO… yes, shared checking for PDO includes… (cached) /usr/local/src/php-5.3.7/ext checking for sqlite3 files in default path… not found configure: error: Please reinstall the sqlite3 distribution
Fix:
复制代码 代码如下:
yum -y install sqlite-devel
checking for utsname.domainname… yes checking for PSPELL support… yes configure: error: Cannot find pspell
Fix:
复制代码 代码如下:
yum -y install aspell-devel
checking whether to enable UCD SNMP hack… yes checking for default_store.h… no
checking for kstat_read in -lkstat… no checking for snmp_parse_oid in -lsnmp… no checking for init_snmp in -lsnmp… no configure: error: SNMP sanity check failed. Please check config.log for more information.
Fix:
复制代码 代码如下:
yum -y install net-snmp-devel
checking whether to enable XMLWriter support… yes, shared checking for xml2-config path… (cached) /usr/bin/xml2-config checking whether libxml build works… (cached) yes checking for XSL support… yes, shared configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
Fix:
复制代码 代码如下:
yum -y install libxslt-devel
configure: error: xml2-config not found. Please check your libxml2 installation.
Fix:
复制代码 代码如下:
yum -y install libxml2-devel
checking for PCRE headers location… configure: error: Could not find pcre.h in /usr
Fix:
复制代码 代码如下:
yum -y install pcre-devel
configure: error: Cannot find MySQL header files under yes. Note that the MySQL client library is not bundled anymore!
Fix:
复制代码 代码如下:
yum -y install mysql-devel
checking for unixODBC support… configure: error: ODBC header file ‘/usr/include/sqlext.h' not found!
Fix:
复制代码 代码如下:
yum -y install unixODBC-devel
checking for pg_config… not found configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
Fix:
复制代码 代码如下:
yum -y install postgresql-devel
configure: error: Cannot find pspell
Fix:
复制代码 代码如下:
yum -y install pspell-devel
configure: error: Could not find net-snmp-config binary. Please check your net-snmp installation.
Fix:
复制代码 代码如下:
yum -y install net-snmp-devel
configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
Fix:
复制代码 代码如下:
yum -y install libxslt-devel