如何在 OSX 上使用 MAMP 安装 php 7.2 的 gmp 扩展
How to install gmp extension for php 7.2 using MAMP on OSX
How to install gmp extension for php 7.2.1 using MAMP on OSX?
我正在尝试使用带 P-256 曲线和 SHA-256 的椭圆曲线数字签名算法 (ECDSA) 使用 php 和此库 (lcobucci/jwt) 加密令牌哈希算法。
当 运行 php 脚本时出错:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Class 'Mdanter\Ecc\EccFactory' not found
我发现我缺少 mdanter/ecc
依赖包,所以我尝试 运行 以下命令。
命令运行:
composer require mdanter/ecc
输出:
mdanter/ecc v0.5.0 requires ext-gmp * -> the requested PHP extension gmp is missing from your system
我已经尝试了所有我能找到的方法来研究这个错误以及与 MAMP 相关的错误。但是我无法解决这个问题。 这里有没有人有专门为 MAMP 添加 gmp php 扩展的经验并愿意帮助我?
注意:我不是一个非常有经验的网络开发人员,我主要创建 iOS 应用程序并且我想在 php 中生成一个令牌,这样我就可以访问 Apple Music Kit API资源。
您必须从 php 源代码构建 gmp 扩展。
您需要 Xcode 和 homebrew,以安装编译器工具链、gmp 库和 autoconf
:
brew install autoconf gmp
由于我的 MAPP 附带 php 7.2.8,我将使用此 php 版本作为示例,您可以升级 MAPP 安装或更换与 7.2.1 相关的版本。 Download 并将 php(7.2.8) 源代码解压到一个目录,然后根据您的 php 安装配置构建环境并构建扩展:
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
将扩展加载配置添加到 /Applications/MAMP/bin/php/php7.2.8/conf
中的 php.ini
:
extension=gmp.so
现在这行得通了:
/Applications/MAMP/bin/php/php7.2.8/bin/php composer.phar require mdanter/ecc
这是我在 2020
中的做法
从源下载 php https://github.com/php/php-src/releases 选择与您拥有的 MAMP PHP 版本匹配的版本。
复制所需的扩展名。这里我们复制gmp目录。
粘贴到/Applications/MAMP/bin/php/php7.4.1/include/php/ext
(确保移动到您的 MAMP php 版本目录)
cd /Applications/MAMP/bin/php/php7.4.1/include/php/ext/gmp
然后 运行 phpize 命令
/Applications/MAMP/bin/php/php7.4.1/bin/phpize
第 5 步:
./configure --with-php-config=/Applications/MAMP/bin/php/php7.4.1/bin/php-config
输出如下
然后
make
然后
make install
已安装。
您可以通过
确认
/Applications/MAMP/bin/php/php7.4.1/bin/php -i | grep gmp
gmp 支持 => 启用
如果您没有看到 gmp 支持已启用,您可能需要将以下内容添加到 php.ini。
此命令将显示 MAMP php
使用了哪个 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
我运行进入错误unable to locate gmp.h
而运行配置命令
我不得不使用 --with-gmp
标签来告诉 gmp 的正确路径。
./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.34/bin/php-config --with-gmp=/opt/homebrew/Cellar/gmp/6.2.1
How to install gmp extension for php 7.2.1 using MAMP on OSX?
我正在尝试使用带 P-256 曲线和 SHA-256 的椭圆曲线数字签名算法 (ECDSA) 使用 php 和此库 (lcobucci/jwt) 加密令牌哈希算法。
当 运行 php 脚本时出错:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Class 'Mdanter\Ecc\EccFactory' not found
我发现我缺少 mdanter/ecc
依赖包,所以我尝试 运行 以下命令。
命令运行:
composer require mdanter/ecc
输出:
mdanter/ecc v0.5.0 requires ext-gmp * -> the requested PHP extension gmp is missing from your system
我已经尝试了所有我能找到的方法来研究这个错误以及与 MAMP 相关的错误。但是我无法解决这个问题。 这里有没有人有专门为 MAMP 添加 gmp php 扩展的经验并愿意帮助我?
注意:我不是一个非常有经验的网络开发人员,我主要创建 iOS 应用程序并且我想在 php 中生成一个令牌,这样我就可以访问 Apple Music Kit API资源。
您必须从 php 源代码构建 gmp 扩展。
您需要 Xcode 和 homebrew,以安装编译器工具链、gmp 库和 autoconf
:
brew install autoconf gmp
由于我的 MAPP 附带 php 7.2.8,我将使用此 php 版本作为示例,您可以升级 MAPP 安装或更换与 7.2.1 相关的版本。 Download 并将 php(7.2.8) 源代码解压到一个目录,然后根据您的 php 安装配置构建环境并构建扩展:
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
将扩展加载配置添加到 /Applications/MAMP/bin/php/php7.2.8/conf
中的 php.ini
:
extension=gmp.so
现在这行得通了:
/Applications/MAMP/bin/php/php7.2.8/bin/php composer.phar require mdanter/ecc
这是我在 2020
从源下载 php https://github.com/php/php-src/releases 选择与您拥有的 MAMP PHP 版本匹配的版本。
复制所需的扩展名。这里我们复制gmp目录。
粘贴到/Applications/MAMP/bin/php/php7.4.1/include/php/ext
(确保移动到您的 MAMP php 版本目录)
cd /Applications/MAMP/bin/php/php7.4.1/include/php/ext/gmp
然后 运行 phpize 命令
/Applications/MAMP/bin/php/php7.4.1/bin/phpize
第 5 步:
./configure --with-php-config=/Applications/MAMP/bin/php/php7.4.1/bin/php-config
输出如下
然后
make
然后
make install
已安装。
您可以通过
确认/Applications/MAMP/bin/php/php7.4.1/bin/php -i | grep gmp
gmp 支持 => 启用
如果您没有看到 gmp 支持已启用,您可能需要将以下内容添加到 php.ini。
此命令将显示 MAMP php
使用了哪个 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
我运行进入错误unable to locate gmp.h
而运行配置命令
我不得不使用 --with-gmp
标签来告诉 gmp 的正确路径。
./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.34/bin/php-config --with-gmp=/opt/homebrew/Cellar/gmp/6.2.1