PHP安装 SM3 扩展
找到安装sm3扩展,按照命令安装时发现一些问题,做些总结。
附链接地址:https://github.com/luzhuqun/php-sm3
1. git clone该项目到你的linux php源码ext目录下.
2. 进入sm3扩展,执行/usr/local/php/bin/phpize
3. ./configure --with-php-config=/usr/local/php/bin/php-config
4. make && make install
5. 添加扩展到你的php.ini文件 extension=sm3.so
6. 测试/usr/local/php/bin/php -r "var_dump(sm3('abc'));" 输出string(64)
"66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0"
安装过程中,发现我的php 运行地址与这个不同,后修改命令:
2 . 直接执行 /www/server/php/72/bin/phpize
出现报错 Cannot find config.m4. Make sure that you run ‘/usr/bin/phpize’ in the top level source directory
解决办法:https://blog.csdn.net/m0_38026518/article/details/94068187
解决后在执行2,3,4,方法如下
/www/server/php/72/bin/phpize
./configure--with-php-config=/www/server/php/72/bin/php-config&&make&& make install
添加后在执行5,出现报错,无法加载动态库“openssl”,参考以下链接内容修改即可。
https://blog.csdn.net/bxprog/article/details/81143163
我出现的问题解决办法是将php.ini 中 extension=openssl 注释掉
在执行测试6,又出现报错:无法加载动态库“sm3.so” ,此时可能是找不到这个地址
解决办法是将 extension=sm3.so 后面地址直接改为固定地址 extension=/etc/php-sm3/modules/sm3.so
再次测试,成功。