Open tylerlwsmith opened 10 months ago
I've been able to work around this issue in two ways:
brew install openssl@1.1
homebrew_package_path openssl@1.1
to homebrew_package_path openssl
in the install
file.@tylerlwsmith Thank you for the workaround! I was pulling my hair out wondering why it wasn't working on my newer machine, but was fine on an older one.
It seems like openssl@1.1
is an undocumented dependency on MacOS, it might be helpful if it were explicitly documented/installed in the Github actions workflow.
I changed the install
file to point to openssl
without specifying version 1.1 and it worked.
Continue @tylerlwsmith's awesome workaround but without editing files:
$ brew install openssl@1.1
### If you have openssl v3 installed (you most likely do)
$ brew unlink openssl@3
Unlinking /opt/homebrew/Cellar/openssl@3/3.2.1... 5867 symlinks removed.
$ brew link openssl@1.1
Linking /opt/homebrew/Cellar/openssl@1.1/1.1.1w... 3999 symlinks created.
If you need to have this software first in your PATH instead consider running:
echo 'export PATH="/opt/homebrew/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc
$ openssl version
OpenSSL 1.1.1w 11 Sep 2023
$ asdf install php xxx
### Restore openssl version to v3
$ brew unlink openssl@1.1
Unlinking /opt/homebrew/Cellar/openssl@1.1/1.1.1w... 3999 symlinks removed.
$ brew link openssl@3
Linking /opt/homebrew/Cellar/openssl@3/3.2.1... 5867 symlinks created.
$ openssl version
OpenSSL 3.2.1 30 Jan 2024 (Library: OpenSSL 3.2.1 30 Jan 2024)
Oddly enough, after installing OpenSSL 1.1 via Homebrew and installing PHP 8.3, I did not need to switch to OpenSSL 1.1 to install other versions of PHP. I even tried to re-install PHP 8.3 with OpenSSL 3 linked and it worked properly. The build output shows that it actually uses openssl@1.1
. Maybe we just need to have openssl@1.1
installed?
OpenSSL 1.1 reached end of life on September 11, 2023, and as such I get this warning when installing openssl@1.1
from Homebrew:
Warning: openssl@1.1 has been deprecated because it is not supported upstream!
Probably naive question: PHP 8.1 added support for OpenSSL 3.0 - can compile against that instead?
for those on macOS who want openssl 3
with PHP:
install
file and replace openssl@1.1
by openssl@3
install
file, but you need to brew install openssl@1.1
Oddly enough, after installing OpenSSL 1.1 via Homebrew and installing PHP 8.3, I did not need to switch to OpenSSL 1.1 to install other versions of PHP. I even tried to re-install PHP 8.3 with OpenSSL 3 linked and it worked properly. The build output shows that it actually uses
openssl@1.1
. Maybe we just need to haveopenssl@1.1
installed?
You are correct. I just installed openssl@1.1
and retried the installation and it worked, no need to switch versions or meddle with installation files
For the benefit of future storm-tossed mariners driven onto the rocky shore, I had to add --with-openssl=$(brew --prefix openssl)
to PHP_CONFIGURE_OPTIONS
to make it work. I also had to add --with-iconv
. Based on manually executing the lines in the install script that search for packages, both of those should have worked out of the box. So I'm not sure what's going on there.
Provide environment information
To Reproduce
Run
asdf install php 8.3.1
orPHP_WITHOUT_PEAR=yes asdf install php 8.3.1
.Describe the Bug
Installation appears to error out when trying to install
pear
orcomposer
because https is not enabled inphp.ini
during the installation.When running
asdf install php 8.3.1
, I get the following errors:When running
PHP_WITHOUT_PEAR=yes asdf install php 8.3.1
, I get the following errors:Expected Behaviour
PHP successfully installs, or fails in a way that indicates a missing dependency before the installation fails on an https request.