duanhu7400 2016-09-21 20:46
浏览 212
已采纳

无法在macOS Sierra上安装带有Homebrew的PHP 7

I'm trying to setup Laravel's Valet which, as a dependency, requires PHP 7. When I try to install PHP 7 with Homebrew I get the following error:

Configuring SAPI modules
checking for Apache 2.0 handler-module support via DSO through APXS... 

Sorry, I cannot run apxs.  Possible reasons follow:

1. Perl is not installed
2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs
3. Apache was not built using --enable-so (the apxs usage page is displayed)

The output of /usr/sbin/apxs follows:
apxs:Error: /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/apr-1-config not found!.

configure: error: Aborting

READ THIS: https://git.io/brew-troubleshooting
If reporting this issue please do so at (not Homebrew/brew):
  https://github.com/Homebrew/homebrew-php/issues

These open issues may also help:
php70-dbase  https://github.com/Homebrew/homebrew-php/issues/3508
php70-intl not found https://github.com/Homebrew/homebrew-php/issues/3591
php70-opcache install issue https://github.com/Homebrew/homebrew-php/issues/3586
Problem installing php70-mcrypt, php70-opcache, php70-xdebug on El Capitan https://github.com/Homebrew/homebrew-php/issues/3587
Add php70-zmq formula https://github.com/Homebrew/homebrew-php/pull/3474
Problem installing homebrew/php/php70-imagick https://github.com/Homebrew/homebrew-php/issues/3571
Install PHP70: Incompatible library version https://github.com/Homebrew/homebrew-php/issues/3444
brew install php70-redis https://github.com/Homebrew/homebrew-php/issues/2762
Allow --enable-redis-igbinary for php70-redis https://github.com/Homebrew/homebrew-php/pull/3473
Add head formula for php70-uploadprogress https://github.com/Homebrew/homebrew-php/pull/3178

This is on a fresh install of macOS Sierra (actual release, not a beta) with a fresh install of Homebrew (updated). I have installed, ran and agreed to the Xcode licensing agreement.

I have no idea what these errors mean or how to fix them. Can anyone offer any help?

Thanks.

  • 写回答

4条回答 默认 最新

  • dongliu1883 2016-09-21 21:35
    关注

    Right I've figured it out. I'm posting the steps to successfully install the require components below in case anybody else stumbles upon this issue:

    1). make sure Homebrew is up to date:

    brew update
    

    2). Fix the PHP 7 error by making sure Xcode is installed and then typing the following into the Terminal:

    brew install apr apr-util
    sudo mkdir -p /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/
    sudo ln -s /usr/local/opt/apr/bin/apr-1-config /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/
    sudo ln -s /usr/local/opt/apr-util/bin/apu-1-config /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/
    

    3). Run the following command (otherwise the PHP installation will complain about missing libz):

    xcode-select --install
    

    4). You can now install PHP 7 with Homebrew:

    brew install homebrew/php/php70
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • duanbin198788 2016-09-22 16:40
    关注

    I used the following commands to make it work.

    brew tap homebrew/dupes
    brew tap homebrew/versions
    brew tap homebrew/homebrew-php
    brew update && brew install apr apr-util
    brew link apr-util --force
    brew link apr --force
    which apu-1-config
    which apr-1-config
    sudo mkdir -p /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/
    sudo ln -s /usr/local/bin/apu-1-config /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/
    sudo ln -s /usr/local/bin/apr-1-config /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/
    brew install php70
    
    评论
  • douzhan1031 2016-09-26 19:57
    关注

    It may also be important for those using the macOS-delivered installation of Apache with PHP via Homebrew that (quote from Homebrew php70 install):

    With the release of macOS Sierra the Apache module is now not built by default. If you want to build it on your system you have to install php with the --with-apache option. See brew options php70 for more details.

    评论
  • doudao2954 2018-09-23 04:41
    关注

    Here is how I upgrade PHP 5.6 to 7.2 in my Macbook Pro (macOS Sierra)

    a. Update the brew package first.

    $ brew update && brew upgrade
    

    b. Unlink the old version of PHP if it was installed with Homebrew.

    $ brew unlink php56
    

    c. Install the new version of PHP.

    $ brew install php72
    

    After installation, it shows: To enable PHP in Apache add the following to httpd.conf (/etc/apache2) and restart Apache:

    d. Using vim edit httpd.conf of apache2.

    $ sudo vim /etc/apache2/httpd.conf
    

    Search “php5_module” then commend out the statements as follows:

    #Comment out the PHP5 module
    #LoadModule php5_module libexec/apache2/libphp5.so
    

    Add the commands as follows:

    #Enable PHP 7 module
    LoadModule php7_module /usr/local/opt/php/lib/httpd/modules/libphp7.so
    
    <FilesMatch \.php$>
      SetHandler application/x-httpd-php
    </FilesMatch>
    

    e. 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/
    

    f. Restart Apache service

    $ sudo apachectl restart
    

    g. check the php version:

    $ php -v
    PHP 7.2.7 (cli) (built: Jun 22 2018 06:29:00) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    

    Done!

    Please visit the article "Upgrade PHP version from 5.6 to 7.2 on macOS Sierra (10.12)" of my blog for more information!

    Cheer!

    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 我不明白为什么c#微软的官方api浏览器为什么不支持函数说明的检索,有支持检索函数说明的工具吗?
  • ¥15 ORBSLAM2框架跑ICL-NUIM数据集
  • ¥15 在我想检测ros是否成功安装时输入roscore出现以下
  • ¥30 老板让我做一个公司的投屏,实时显示日期,时间,安全生产的持续天数,完全没头绪啊
  • ¥15 Google Chrome 所有页面崩溃,三种解决方案都没有解决,我崩溃了
  • ¥20 使用uni-app发起网络请求,获取重定向302返回的cookie
  • ¥20 手机外部浏览器拉起微信小程序支付 (相关搜索:微信小程序)
  • ¥20 怎样通过一个网址找到其他同样模版的网址
  • ¥30 XIAO esp32c3 读取FDC2214的数据
  • ¥15 在工控机(Ubuntu系统)上外接USB蓝牙硬件进行蓝牙通信