首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在OSX上使用MAMP安装php 7.2的gmp扩展

如何在OSX上使用MAMP安装php 7.2的gmp扩展
EN

Stack Overflow用户
提问于 2018-05-20 13:42:29
回答 2查看 12.7K关注 0票数 20

如何在OSX上使用曼普安装PHP7.2.1的gmp扩展?

我试图用php和这个库(lcobucci/jwt)加密令牌,使用P-256曲线的椭圆曲线数字签名算法(ECDSA)和SHA-256哈希算法。

运行php脚本时错误:

代码语言:javascript
复制
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Class 'Mdanter\Ecc\EccFactory' not found

我想我缺少了mdanter/ecc依赖包,所以我尝试运行以下命令。

运行命令:

代码语言:javascript
复制
composer require mdanter/ecc

输出:

代码语言:javascript
复制
mdanter/ecc v0.5.0 requires ext-gmp * -> the requested PHP extension gmp is missing from your system

我已经尝试了我能找到的一切,研究这个错误,并与MAMP相关。但我解决不了这个问题。这里有谁有专门添加gmp扩展的经验,并且愿意帮助我吗?

注意:我不是一个经验丰富的web开发人员,我主要是创建iOS应用程序,我想在php中生成一个令牌,这样我就可以访问资源。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-30 08:50:12

以下是我在2020中的表现

从源代码https://github.com/php/php-src/releases下载php,选择与MAMP版本匹配的版本。

复制你想要的分机。这里我们正在复制gmp目录。

粘贴到/Applications/MAMP/bin/php/php7.4.1/include/php/ext

(确保移动到MAMP版本目录)

代码语言:javascript
复制
cd /Applications/MAMP/bin/php/php7.4.1/include/php/ext/gmp

然后运行phpize命令。

代码语言:javascript
复制
/Applications/MAMP/bin/php/php7.4.1/bin/phpize

第5步:

代码语言:javascript
复制
./configure --with-php-config=/Applications/MAMP/bin/php/php7.4.1/bin/php-config

它的输出如下

然后

代码语言:javascript
复制
make

然后

代码语言:javascript
复制
make install

现在安装好了。

你可以通过

代码语言:javascript
复制
/Applications/MAMP/bin/php/php7.4.1/bin/php -i | grep gmp

gmp支持=>支持

如果您没有看到启用gmp支持,则可能需要向php.ini添加以下内容。

此命令将向您展示MAMP使用的php.ini文件。

/Applications/MAMP/bin/php/php7.4.1/bin/php -i grep "php.ini“

添加extension=gmp.so

重新启动MAMP :)

在这里贴上截图,https://mycodde.blogspot.com/2020/01/install-php-gmp-extension-in-mamp-2020.html

票数 21
EN

Stack Overflow用户

发布于 2018-09-28 09:03:04

您必须从php源代码构建gmp扩展。

您需要Xcode和自制来安装编译器工具链、gmp lib和autoconf

代码语言:javascript
复制
brew install autoconf gmp

由于我的MAPP附带了php 7.2.8,我将使用这个php版本作为示例,您可以升级您的MAPP安装或替换与7.2.1相关的版本。下载和解包php(7.2.8)源代码到dir,然后根据php安装配置构建环境并构建扩展:

代码语言:javascript
复制
cd ext/gmp
/Applications/MAMP/bin/php/php7.2.8/bin/phpize
./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.8/bin/php-config
make
make install

将扩展加载配置添加到php.ini/Applications/MAMP/bin/php/php7.2.8/conf

代码语言:javascript
复制
extension=gmp.so

现在,这样做是可行的:

代码语言:javascript
复制
/Applications/MAMP/bin/php/php7.2.8/bin/php composer.phar require mdanter/ecc
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50435455

复制
相关文章

相似问题

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