PHP 7.3.0 编译安装~

yufei       6 年 前       1783

我用的是苹果的笔记本,装软件一般都用 brew ,当 PHP 7.3.0 出来的时候,我使用 brew info php 命令看了下,竟然还没同步,只显示到版本 7.2.12

yufeideMacBook-Pro:php-7.3.0 yufei$ brew info php
php: stable 7.2.12 (bottled)
General-purpose scripting language
https://secure.php.net/
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/php.rb
==> Dependencies
Build: httpd ✘, pkg-config ✔
Required: apr ✘, apr-util ✘, argon2 ✘, aspell ✘, autoconf ✔, curl-openssl ✘, freetds ✘, freetype ✔, gettext ✔, glib ✘, gmp ✔, icu4c ✘, jpeg ✔, libpng ✔, libpq ✘, libsodium ✘, libzip ✔, openldap ✘, openssl ✘, pcre ✘, sqlite ✘, tidy-html5 ✘, unixodbc ✘, webp ✘
==> Caveats
To enable PHP in Apache add the following to httpd.conf and restart Apache:
    LoadModule php7_module /usr/local/opt/php/lib/httpd/modules/libphp7.so

    <FilesMatch \.php$>
        SetHandler application/x-httpd-php
    </FilesMatch>

Finally, check DirectoryIndex includes index.php
    DirectoryIndex index.php index.html

The php.ini and php-fpm.ini file can be found in:
    /usr/local/etc/php/7.2/

To have launchd start php now and restart at login:
  brew services start php
Or, if you don't want/need a background service you can just run:
  php-fpm
==> Analytics
install: 46,284 (30 days), 123,164 (90 days), 356,514 (365 days)
install_on_request: 42,004 (30 days), 111,794 (90 days), 321,688 (365 days)
build_error: 0 (30 days)

不得已,只能自己编译安装了。

其实,PHP 从 5.3 开始到现在,编译安装的命令一直都没有变,唯一变化的,是新增了一些扩展,也删除了一些就的扩展

大家所熟悉的原来的老旧的编译命令还是能用的

不多说了,记录下编译安装的过程

  1. 现在 PHP 7.3.0 ,下载网址如下 http://php.net/downloads.php 有很多压缩种类可以选择,一般选择 .tar.gz 那个版本,毕竟,我们对 tar -xzvf 命令更熟悉

  2. 下载完成后解压,这个不用多说了,可以直接找到 php-7.3.0.tar.gz 压缩包,然后双进它,也可以使用下面的命令

    tar -xzvf php-7.3.0.tar.gz
    
  3. 然后打开终端 ( shell ) ,使用 cd 命令进入到目录 php-7.3.0

  4. 然后运行下面的命令配置编译文件

    ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl
    

    这个命令里没有添加 -with-mysql ,因此可能会有 warning 警告

    configure: WARNING: unrecognized options: --with-mysql
    

不用管,现在都用 pdo 的年代了

中途可能会有各种配置错误,一一修正即可
  1. 然后运行下面的命令开始编译

    make
    
  2. 如果没有任何错误,就可以运行下面的命令来安装

    sudo make install
    

    因为我们在 configure 的时候指定的安装目录前缀为 --prefix=/usr/local/php

    因此,上面的命令会将 php-7.3.0 安装到 /usr/local/php 目录,这需要 sudo 权限

  3. 安装完后,如果我们运行 php -v,那么它仍然会显示旧的版本,比如我这台全新的系统的版本为

    php -v
    PHP 7.1.16 (cli) (built: Apr  1 2018 14:10:37) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    
  4. 然后我们需要运行下面的命令,将 /usr/local/php/bin/ 里的所有命令都连接到 /usr/local/bin 目录中,运行下面的命令即可

    ln -s /usr/local/php/bin/* /usr/local/bin
    
  5. 最后,重启我们的终端或 shell,然后运行 php -v 命令,就可以看到正确的输出了

    php -v
    PHP 7.3.0 (cli) (built: Dec  8 2018 07:54:32) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies
    

喜大普绷

感谢 PHP 核心开发团队,谢谢给我们带来这么好的语言

目前尚无回复
简单教程 = 简单教程,简单编程
简单教程 是一个关于技术和学习的地方
现在注册
已注册用户请 登入
关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.