Я работаю над проектом, где мне нужна функция imap_open(), и я только что купил свой первый MacBook Pro с OSX El Capitan.
Я активировал расширение в php.ini, но файл.so отсутствует, поиск по установке расширения imap не работает на El Capitan, а во время компиляции я получаю сообщение об ошибке osdep.c:170:10: fatal error: 'x509v3.h' file not found
Кто-нибудь знает, что мне нужно установить для получения этого файла заголовка или есть простой способ установить расширение, например, в Linux (yum install php5-imap, apt-get install php5-imap)?
На прошлой неделе у меня была такая же проблема, и мне удалось ее решить. Проблема заключается в том, что файл imap make предполагает, что ваш открытый ssl находится в /usr/include/openssl, тогда как на моем mac он находился в /usr/local/Cellar/openssl/1.0.2d_1/include/openssl
Вы можете использовать поиск x509v3.h, чтобы найти точный путь
Следуя шагам отсюда... После шага cd imap-2007f
откройте Makefile, найдите OSX и измените путь ssl include к вашему пути.
Это должно решить проблемы с компиляцией, поэтому вы сможете продолжить до последнего шага, когда вам нужно будет скопировать imap.so в /usr/lib/php, что будет невозможно из-за новой функции SIP на El Capitan
Посмотрите здесь, как переопределить это ограничение. Я надеюсь, что это поможет
Я столкнулся с этим при установке SSL для IMAP в MAMP на El Capitan. Иван хорошо, но я нашел несколько следующих проблем одного типа:
fatal error: 'openssl/bio.h'
Вместо изменения Makefile создайте символическую ссылку:
sudo ln -s /usr/local/Cellar/openssl/1.0.2a-1/include/openssl /usr/include/openssl
Но для этого вы должны сначала удалить "Эль-Капитан" безумную "безопасную" инвалидность, как сказал Иван. Загрузите, удерживая ⌘
+ R
, запустите терминал и напишите csrutil disable
. Затем reboot
.
Я использую это руководство для установки на моей среде Mamp, работающей для меня
Хотя я понимаю, что это прямо не отвечает на ваши вопросы, самый простой способ заставить PHP работать с IMAP, установленным на OSX, - это установить MAMP (https://www.mamp.info). Он устанавливает вторую копию PHP и Apache в свою собственную структуру каталогов, поэтому она создает отличную локальную среду разработки для этих продуктов.
Добавленный бонус здесь - это не коснется вашей предустановленной версии PHP, поэтому, если вам не нравится MAMP, вы можете просто удалить ее. Очень просто.