首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MAMP上升级XCache

在MAMP上升级XCache
EN

Stack Overflow用户
提问于 2013-11-04 16:05:47
回答 1查看 945关注 0票数 2

在尝试为MAMP编译Xcache版本3.x时,phpize寻找Xcache 2.x附带的早期PHP版本

pwd: /Applications/MAMP/bin/php/php5.5.3/xcache-3.1.0

代码语言:javascript
复制
$ phpize
grep: /Applications/MAMP/bin/php/php5.4.19/include/php/main/php.h: No such file or directory
grep: /Applications/MAMP/bin/php/php5.4.19/include/php/Zend/zend_modules.h: No such file or directory
grep: /Applications/MAMP/bin/php/php5.4.19/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:        
Zend Module Api No:     
Zend Extension Api No:  

当我升级到OSX10.9时,问题就出现了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-23 06:03:50

构建针对MAMP的XCache

  1. 安装命令行
  2. 下载和配置php源代码
  3. 构建xcache

安装命令行

您需要配置Bash以使用正确的php命令。由于您希望使用5.5.3对MAMP进行构建,所以可以在提示符上运行以下命令:

代码语言:javascript
复制
$ export PATH=/Applications/MAMP/bin/php/php5.5.3/bin:$PATH

您还需要将上面的内容添加到~/.bashrc中,以确保以后的会话使用正确的php命令-附加到.bashrc:

代码语言:javascript
复制
$ echo 'export PATH=/Applications/MAMP/bin/php/php5.5.3/bin:$PATH' >> ~/.bashrc

现在你跑的时候:

代码语言:javascript
复制
$ which php

您应该看到:/Applications/MAMP/bin/php/php5.5.3/php

下载和配置php源代码

http://www.php.net/releases/下载php5.5.3源代码。MAMP不包括PHP源代码,因此您必须在从源代码构建扩展时提供和配置它。

解压缩存档并将文件夹重命名为php,并将其放置在/Applications/MAMP/bin/php/php5.5.3/include/ --这意味着您现在应该有路径/Applications/MAMP/bin/php/php5.5.3/include/php/

当你跑步时:

代码语言:javascript
复制
$ /Applications/MAMP/bin/php/php5.5.3/include/php/configure

你应该看到一堆输出。如果您看到错误,请再次检查是否将源复制到正确的位置。

现在,您可以开始使用PHP5.5.3构建扩展。

注意:您可能需要创建包含文件夹。

由于MAMP没有附带源代码,所以他们选择省略include文件夹--继续创建它,因为在从源代码构建扩展时,它是查找php源代码的传统地方。

如果您的php5.x编译版本位于/path/to/php5.x/,那么php源代码应该可以在/path/to/php5.x/include/php/上找到。

从源构建XCache

下载XCache源代码解压缩存档并将cd解压缩到它之后:

代码语言:javascript
复制
$ cd /path/to/xcache-source-code

假设您已将xcache-3.1.0下载到OSX的下载文件夹中,则可以运行以下命令:

代码语言:javascript
复制
$ cd ~/Downloads/xcache-3.1.0

从XCache源代码文件夹中运行以下命令来构建和安装Xcache扩展:

代码语言:javascript
复制
$ phpize
$ ./configure --enable-xcache --with-php-config=/Applications/MAMP/bin/php/php5.5.3/bin/php-config
$ make 
$ make install

如果一切顺利,您将在扩展目录中看到xcache.so

现在,您可以通过将extension=xcache.so添加到php.ini来启用扩展。如果您正在使用MAMP,那么通过File > edit > php.version.ini编辑php.version.ini是很重要的,否则如果您使用Basic,可以运行以下一行:

$ open -a TextEdit `php -i | grep 'Load.*Config.*File.*=>' | sed s/'.* => '/''/`

现在,在php.ini中搜索其他“扩展”指令,并将extension=xcache.so添加到列表中。

通过运行以下命令检查它是否已安装:

$ php -i | grep xcache

您应该会看到Xcache的设置。当您重新启动MAMP时,将启用XCache。

向JT致敬

使用5.5.3禁用Zend OPcache

MAMP2.2提供了支持PHP5.5.3的Zend OPcache。这可能会给XCache带来问题。

如果使用XCache,请确保禁用Zend OPcache。在php.ini中搜索*OPcache并注释掉行:

代码语言:javascript
复制
zend_extension="/Applications/MAMP/bin/php/php5.5.3/lib/php/…/opcache.so"

喜欢

代码语言:javascript
复制
;zend_extension="/Applications/MAMP/bin/php/php5.5.3/lib/php/…/opcache.so"
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19771849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档