Сборка / установка PHP-расширения Mongodb на MAMP и Mac arm64 (Big sur)

#mongodb #macos #mamp #mongodb-php

#mongodb #macos #mamp #mongodb-php

Вопрос:

Недавно перешел на платформу arm64 mac, но поскольку у меня возникли проблемы с установкой / сборкой расширения mongodb php с использованием Mamp.

Я попробовал следующее :

 CFLAGS="-arch x86_64" CPPFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" ./configure --target=x86_64
 

И все возможные варианты с использованием этих параметров, но ничего не работает.

Получаю следующую ошибку :

     [02-Feb-2021 18:09:00 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library 'mongodb.so' (tried: /Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so (dlopen(/Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so, 9): no suitable image found.  Did find:
        /Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so: mach-o, but wrong architecture
        /Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so: mach-o, but wrong architecture), /Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so.so (dlopen(/Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug
-non-zts-20190902/mongodb.so.so, 9): image not found)) in Unknown on line 0
 

И при установке с помощью pecl : CFLAGS="-arch i386" sudo pecl install mongodb-1.5.4

Получаю следующую ошибку : [04-Feb-2021 09:10:14 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'mongodb.so' (tried: /Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so (dlopen(/Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so, 9): Library not loaded: libicuuc.56.dylib Referenced from: /Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so Reason: image not found), /Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so.so (dlopen(/Applications/MAMP/bin/php/php7.4.12/lib/php/extensions/no-debug-non-zts-20190902/mongodb.so.so, 9): image not found)) in Unknown on line 0

Кто-нибудь, кто успешно сделал то, что я пытаюсь сделать?

Ответ №1:

Удалось установить его с помощью pecl с помощью :

sudo pecl install -a mongodb