Mac安装wxwork_finance_sdk问题

Mac(M1)安装wxwork_finance_sdk扩展遇到如下问题,过程当中没有任何报错,

yangyunhao@yangyunhaodeMacBook-Pro api-server % php -m         
PHP Warning:  PHP Startup: Unable to load dynamic library 'wxwork_finance_sdk.so' (tried: /opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so (dlopen(/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so, 0x0009): symbol not found in flat namespace '_DecryptData'), /opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so (dlopen(/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so, 0x0009): tried: '/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so' (no such file), '/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so' (no such file))) in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library 'wxwork_finance_sdk.so' (tried: /opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so (dlopen(/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so, 0x0009): symbol not found in flat namespace '_DecryptData'), /opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so (dlopen(/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so, 0x0009): tried: '/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so' (no such file), '/opt/homebrew/lib/php/pecl/20190902/wxwork_finance_sdk.so.so' (no such file))) in Unknown on line 0

【以下回答由 GPT 生成】

这个问题可能是由于缺少所需的符号导致的。以下是解决这个问题的步骤:

  1. 确保已经安装了wxwork_finance_sdk。您可以在终端中运行以下命令进行安装: plaintext pecl install wxwork_finance_sdk

  2. 确保wxwork_finance_sdk.so文件正确加载。您可以使用以下命令检查php.ini文件的位置: plaintext php --ini

  3. 打开找到的php.ini文件并添加以下行: plaintext extension=wxwork_finance_sdk.so

  4. 保存并关闭php.ini文件。

  5. 重新启动您的Web服务器,以使更改生效。

  6. 如果问题仍然存在,请尝试使用libphp_wxwork_finance_sdk.so代替wxwork_finance_sdk.so。在终端中执行以下命令以更改php.ini文件: plaintext sudo nano /etc/php.ini

将以下行添加到文件中: plaintext extension=libphp_wxwork_finance_sdk.so

保存并关闭文件。

  1. 重新启动您的Web服务器,再次检查问题是否已解决。

如果尝试了上述步骤后问题仍然存在,那么可能是由于库的兼容性问题导致的。在这种情况下,您可以尝试联系wxwork_finance_sdk的开发者或寻求他们的支持来解决问题。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^