摘要:下載源碼并解壓進入正題,要編譯安裝首先當然要下載的源碼。啟動服務通過查看是否啟動成功至此,就安裝成功了,你也開始使用吧
首先推薦一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog。
里面說到是否會去使用PHP7,就個人而言,我是毫不猶豫地使用的,但是生產環境就不是我說了算,所以只能自己在自己的開發環境里更新PHP的版本。那么,你呢?
筆者使用的是Linux的openSUSE42.1發行版,Yast里面還沒有PHP7的安裝包,于是乎只能自己手動編譯安裝了。作為一個PHP開發者,我是非常希望能夠學會編譯安裝PHP7的,之前試過幾次,但是每次安裝都要上網找各種資料,于是乎,這次安裝成功后就想把自己的安裝過程以及遇到的問題記錄下來,方便以后查閱和分享給需要的人。
下載源碼并解壓進入正題,要編譯安裝PHP7,首先當然要下載PHP7的源碼。你可以到github上clone,也可以到PHP官網下載。下載后解壓到/usr/local/src目錄,并將目錄重命名為php7。進入目錄。
配置編譯參數 生成配置文件./buildconf配置
./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --bindir=/usr/local/php7/bin --sbindir=/usr/local/php7/sbin --includedir=/usr/local/php7/include --libdir=/usr/local/php7/lib/php --mandir=/usr/local/php7/php/man --with-config-file-path=/usr/local/php7/etc --with-mysql-sock=/var/run/mysql/mysql.sock --with-mcrypt=/usr/include --with-mhash --with-openssl --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-opcache --enable-fpm --disable-cgi --with-fpm-user=nginx --with-fpm-group=nginx --without-gdbm --disable-fileinfo
參數說明
prefix PHP7安裝的根目錄
with-config-file-path PHP7的配置文件目錄
執行完上面的配置命令后的結果如下圖所示:
執行上面命令的過程中會遇到一些依賴缺少的提示,下面列出我遇到的依賴問題:
錯誤:
configure: error: xml2-config not found. Please check your libxml2 installation.
解決:
zypper install libxml2-devel
錯誤:
configure: WARNING: unrecognized options: --with-mysql
解決:
取消這個選項,這個選項是不存在的
錯誤:
configure: error: jpeglib.h not found.
解決:
zypper install libjpeg-devel
錯誤:
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解決:
zypper install libmcrypt-devel
錯誤:
configure: error: Cannot find pspell
解決:
取消該選項
錯誤:
checking for recode support... yes
configure: error: Can not find recode.h anywhere under /usr /usr/local /usr /opt.
解決:
zypper install librecode-devel
總的來說,在配置的時候遇到沒有的就打開Yast搜一下,如果有的話就安裝,然后重新編譯看還需要那些,如果在Yast找不到,那就上網找一下Google。
編譯和安裝PHP7make && make install
查看安裝成功后的PHP7目錄其中,make之后可以選擇make test。只是一個可選步驟,不執行不知道有什么問題,不過筆者暫時還沒遇到。
編譯安裝成功后,查看PHP7的安裝目錄ls /usr/local/php7:
設置PHP7的配置文件cp /usr/local/src/php7/php.ini-production /usr/local/php7/etc/php.ini cp /usr/local/src/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf添加環境變量
在/etc/profile 文件的最后一行加上
`export PATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATH`
然后執行source /etc/profile
設置PHP日志目錄和php-fpm進程文件(php-fpm.sock)目錄mkdir -p /var/log/php-fpm/ && mkdir -p /var/run/php-fpm && cd /var/run/ && chown -R nginx:nginx php-fpm將PHP設置為開機啟動
chmod +x /etc/init.d/php-fpm chkconfig php-fpm on
啟動PHP服務可以用chkconfig命令查看開機啟動服務列表。
service php-fpm start
通過ps aux | grep "php"查看PHP是否啟動成功
至此,PHP7就安裝成功了,你也開始使用PHP7吧!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/21294.html
摘要:準備工作進入繼續操作編譯安裝庫下載安裝高版本會出現錯誤,建議選擇版本低一些,因為暫不支持,可以使用版本。編譯錯誤解決輸入命令,然后重新編譯。安裝庫下載安裝安裝解壓即可編譯安裝常用編譯選項說明指定的安裝目錄。默認情況下,該模塊沒有被構建。 原文來自http://www.hoohack.me/2016/01/27/compile-install-nginx-in-opensuse/ 下載源...
摘要:下源碼安裝一前言之前,我的開發環境是。重新加載權限表將確保所有到目前為止所做的更改將立即生效。然后,和注意,如果是使用二進制包安裝了及相應的開發庫,不需要指定路徑。五參考資料入門教程編譯安裝編譯安裝 Debian9下源碼安裝LNMP 一、前言 之前,我的開發環境是Windows-10+PHP-7.1+Nginx-1.10+MariaDB-10.1。 后面開發需要使用到memcached...
閱讀 3563·2023-04-25 16:35
閱讀 699·2021-10-11 11:09
閱讀 6162·2021-09-22 15:11
閱讀 3355·2019-08-30 14:03
閱讀 2597·2019-08-29 16:54
閱讀 3349·2019-08-29 16:34
閱讀 3052·2019-08-29 12:18
閱讀 2122·2019-08-28 18:31