1. 程式人生 > >安裝php7及安裝memcache擴展出現的新舊php版本相容擴充套件的問題

安裝php7及安裝memcache擴展出現的新舊php版本相容擴充套件的問題

yum install -y php-mcrypt libmcrypt libmcrypt-devel
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel mysql pcre-devel
#openssl-devel64位 如果是32位伺服器請選擇i386版的
yum install openssl-devel.x86_64
yum install curl curl-devel
yum -y install libxslt-devel
yum install -y
php-mcrypt libmcrypt libmcrypt-devel mcrypt mhash
./configure --prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--with-config-file-scan-dir=/usr/local/php7/etc/php.d \
--with-mcrypt \
--enable-mysqlnd \
--with-mysqli \
--with-pdo-mysql \
--enable-fpm \
--with-gd \
--with-iconv \
--with-zlib \
--enable-xml \ --enable-shmop \ --enable-sysvsem \ --enable-inline-optimization \ --enable-mbregex \ --enable-mbstring \ --enable-ftp \ --enable-gd-native-ttf \ --with-openssl \ --enable-pcntl \ --enable-sockets \ --with-xmlrpc \ --enable-zip \ --enable-soap \ --without-pear \ --with-gettext \ --enable-session \
--with-curl \ --with-jpeg-dir \ --with-freetype-dir \ --enable-opcache make && make install 可選 --with-fpm-user=www \ --with-fpm-group=www \

如果提示configure: error: mcrypt.h not found. Please reinstall libmcrypt.
因為centos6.x 預設的yum源沒有libmcrypt-devel 這個包,由於版權的原因,只能藉助第三方yum源,或者自己手動下載編譯安裝包

wget http://jaist.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
./configure
make && make install

如果報checking for C++ compiler default output file name… configure: error: C++ compiler
cannot create executables

yum list | grep c++
yum install gcc-c++.x86_64

如果提示undefined reference to `libiconv’則需要先安裝libiconv

--with-iconv=/usr/local/libiconv

如果還是報錯則vim Makefile
找到EXTRA_LIBS =
在最後面加上-liconv
或者直接make ZEND_EXTRA_LIBS=’-liconv’

如果重新安裝的是舊版本的php則需要重新編譯apache的LoadModule php5_module檔案

./configure --with-apxs2=/usr/local/sbin/apxs

此時php7安裝完成

mv /usr/local/src/php-7.1.0/php.ini-production /usr/local/php7/etc/php.ini

啟用php-fpm服務

cd /usr/local/php7/etc
mv php-fpm.conf.default php-fpm.conf
mv php-fpm.d/www.conf.default php-fpm.d/www.conf

注意更改php-fpm.conf的user跟group否則可能會因為許可權問題報File not found.

user = nobody
group = nobody

執行php-fpm

/usr/local/php7/sbin/php-fpm -c /usr/local/php7/etc/php.ini -y /usr/local/php7/etc/php-fpm.conf

如果想使用此命令service php-fpm start|stop|restart

cd /usr/local/src/php-7.1.0/sapi/fpm
ls
cp init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on

就可以使用 sevice php-fpm start 來啟用php-fpm了。用 ps -ef | grep php-fpm 看看程序吧。

#如果已安裝過autoconf請忽略
autoconf
yum install autoconf

phpize
./configure --enable-memcache --with-php-config=/usr/local/php7/bin/php-config
make && make install

此時報致命錯誤/root/memcache-2.2.7/memcache.c:40:40: fatal error: ext/standard/php_smart_str.h: No such file or directory

php_smart_str.h檔案不存在
百度搜php_smart_string.h是給字串預處理動態申請記憶體空間,類似於作業系統中記憶體以頁為單位分配,它的好處是對齊記憶體地址,提高訪問速度。
發現php7已經把此檔案改成php_smart_string.h 對比看2個檔案改動蠻大的

這個不知道是不是php官方開發組的相容性沒有做好 期待改善

相關推薦

安裝php7安裝memcache展出php版本相容擴充套件的問題

yum install -y php-mcrypt libmcrypt libmcrypt-devel yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-de

windows下安裝redis 以及phpredis的展 (windows redis php&php7

com sts 刪除 connect 移動 技術分享 base getopt 操作 一、工具準備 1. redis for windows 下載 https://github.com/MSOpenTech/redis 2. PHP擴展下載 http://pecl.php

win10下安裝php7.2的memcache擴充套件

安裝memcache:http://www.runoob.com/memcached/window-install-memcached.html   擴充套件 下載地址:https://download.csdn.net/download/qq_35349114/1064336

編譯安裝PHP7擴充套件

一、編譯安裝PHP 1. 下載原始碼包並解壓 原始碼包地址:http://php.net/downloads.php 下載原始碼包 當前PHP最新本門是7.2.9,下載 php-7.2.9 原始碼包 wget http://be2.php.net/get/php-7.2.9.tar.gz/from

centos 7.2 安裝PHP7新增php-fpm開機啟動

centos 7 編譯安裝 php-7.2.11的步驟 在官網下載php-7.2.11的php壓縮包,centos 7 安裝 php-7.2.11的步驟,http://cn2.php.net/distributions/php-7.2.11.tar.gz cd /usr

vs2008安裝安裝教程

run 可見 資源 進入 打開 post 找不到 com 安裝教程 註:本博客為原創博客,允許轉載,轉載時請註明出處 1.下載vs2008安裝包,找不到資源的請戳這裏:鏈接:https://pan.baidu.com/s/1dGIaPrj 密碼:25dq 2.打開安裝

ubuntu 搭建php7-memcached和memcache

倉庫 http tails inter fig 重要 位置 創建 php Memcache存放Session 1、如果你能修改到服務器配置文件,那就打開打開php.ini(ubuntu php7 在/etc/php/7.0/apache2/php。ini) 或者某個目錄

安裝netmeeting安裝過程中遇到的問題

 netmeeting安裝包和補丁 載地址:http://download.csdn.net/source/1799329 1.開啟安裝包找到Netmeeting-kb927853-x86-enu.msi檔案雙擊安裝 2.點選“Windows NetMeeting

Nginx採用yum安裝方式安裝後的目錄

第一步先執行 rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm 第二步yum info nginx(檢視當前版本可選) 第三步yum

如何安裝oracle安裝過程中常見的問題

IT行業可加我微信:17625089935 首先下載兩個檔案,怎麼下載的去官網下載,這裡不做演示。我下的是oracle11g,然後把他們解壓到一個資料夾裡面。 然後點選setup啟動安裝 然後你可能會遇到一個報錯    win10安裝oracle11g &nbs

安裝 | MATLAB2018a (64位) 安裝教程安裝包下載連結

安裝包下載連結:內附MATLAB從入門到精通視訊教程 全17講 連結:https://pan.baidu.com/s/1JqDqcWmZ-H0ZIH0S8f8Vew  提取碼:09yj >>>>>>>>>>>

ubuntu下查詢安裝安裝路徑

dpkg --list | grep mysql 列出所有的mysql安裝包,如下: dpkg -L libmysqlclient-dev,查詢libmysqlclient-dev的所有安裝檔案,如下: 

MyEclipse如何安裝外掛安裝svn外掛時遇到的一些問題

上圖為MyEclipse的安裝目錄,啟動時系統自動在dropins下搜尋外掛,我們一般會用到的且成功率比較高的安裝方法主要有以下倆種: 一:下載好我們需要的外掛包,解壓後將相關資料夾放入dropins目錄下。如此的缺點是但你安裝很多外掛以後,此資料夾會變得很亂,不好管理。

徹底解除安裝Python安裝的Python模組

如何徹底解除安裝Python? 1、使用pip安裝的模組 pip list得到所有通過pip安裝的軟體 依次pip uninstall [模組] 解除安裝pip(因為我機器上的pip是通過python setup.py安裝的,解除安裝提示成功後報錯了,不知道會不會有什麼後遺

GitLab安裝過程安裝過程所遇問題解疑(安裝過程參照光子CI之旅)

本文主要參考文件:https://github.com/gitlabhq/gitlabhq/blob/5-0-stable/doc/install/installation.md Debian/Ubuntu主要參考https://github.com/gitlabhq/gi

OpenStack Liberty 版本 All-In-One 一鍵安裝ISO 安裝指導

寫在前面: All-In-One 一鍵安裝ISO的製作和釋出在團隊內部已是慣例,隨著Liberty版本的釋出,最新版的All-In-One ISO 製作自然也被提上了日程,此次我接過了接力棒,製作過程的總結由於時間問題,會在後續另起博文。 宣告: 本部落格歡迎轉發,但請保

Oracle安裝問題安裝驗證

第一次安裝問題: win10安裝oracle 11g 時出現INS-13001環境不滿足最低要求 在解壓目錄中找到cvu_prereq.xml檔案(stage->cvu->cvu_prereq.xml) 我的目錄是E:\ORA+11+G+R2+server+64

解除安裝vim 安裝vim8.0

需要多條命令 sudo apt-get remove vim sudo apt-get remove vim-runtime sudo apt-get remove vim -tiny sudo apt-get remove vim-common sudo apt-get

ubuntu解除安裝php7安裝php5.6記錄

    ubuntu16.04版本從預設源安裝的php版本為7.x版本,我們都知道php7.0已經捨棄了很多舊版本的函式等內容,這對舊系統來說是致命的,那麼,我們就有了安裝舊版php的需求,而同一主機安裝兩個版本的php,如果不做配置會報錯。那麼,我們就需要:一、解除安裝ph

安裝SVN安裝語言包

首先下載SVN程式包,安裝SVN----TortoiseSVN-1.10.1.28295-x64-svn-1.10.2.msi。一直單擊下一步即可。 下載成功後點擊安裝,找到設定頁面 到此安裝完成,再次開啟時就是中文的了