PHP 5.2.12
OS X 10.5.8
Если я скомпилирую PHP из исходного кода с помощью следующей команды configure
./configure --disable-all --with-openssl=shared,/opt/local
это удается. Однако после make
и make install
,
php -m
не перечисляет модуль openssl.
Основываясь на том, что я прочитал, я думаю, что это может быть связано с многократными установками библиотеки openssl. Установка последней версии openssl из исходного кода и попытка указать путь в команде конфигурации --with-openssl=/usr/local
всегда приводит к следующей ошибке:
Undefined symbols:
"_EVP_CIPHER_CTX_block_size", referenced from:
_zif_openssl_seal in openssl.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [sapi/cgi/php-cgi] Error 1
Я пробовал несколько разных вариантов пути, но безуспешно.
На основе http://blog.yimingliu.com/2009/02/24/missing-library-symbols-while-compiling-php-528/, я также пытался отредактировать Makefile, чтобы MH_BUNDLE_FLAGS стоял позже в строке компиляции.
Потратив добрую часть дня на эту проблему, я в растерянности.
Какие-либо предложения?
В идеале я хотел бы использовать скомпилированную и самую последнюю версию OpenSSL. Но на данный момент я готов принять все, что работает.