OpenSSL@1.1 not getting linked with Homebrew - trying to install postgresql

Started by cecile rougnauxalmost 4 years ago6 messagesgeneral
Jump to latest
#1cecile rougnaux
cecile_rougnaux@hotmail.com

My system is OS Mojave 10.14.6, I got homebrew from this command :

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

when I try to install postgresql with the command
brew install postgresql

I have this error:

Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
Please reinstall openssl@1.1. Sorry :(

When I try to install openssl@1.1 I have this message:

brew install openssl@1.1
Running `brew update --preinstall`...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/cask).
==> Updated Casks
Updated 8 casks.

Warning: openssl@1.1 1.1.1n is already installed, it's just not linked.
To link this version, run:
brew link openssl@1.1
➜ / brew link openssl@1.1
Warning: Refusing to link macOS provided/shadowed software: openssl@1.1
If you need to have openssl@1.1 first in your PATH, run:
echo 'export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc

For compilers to find openssl@1.1 you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

For pkg-config to find openssl@1.1 you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

And then when I try to force hombrew link openssl, I get this message

Warning: Refusing to link macOS provided/shadowed software: openssl@1.1
If you need to have openssl@1.1 first in your PATH, run:
echo 'export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc

For compilers to find openssl@1.1 you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

For pkg-config to find openssl@1.1 you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

I added the lines to .zshrc file as suggested:

export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

But I kept on having the message when retrying to intall postgresql

Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken

I also tried this command:

brew reinstall openssl

openssl@3 is installed and I get this message:

openssl@3 is keg-only, which means it was not symlinked into /usr/local,
because macOS provides LibreSSL.
and then when I try to

brew install postgresql

I have the same error:
Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
Please reinstall openssl@1.1.

and The pg version in my rails gemfile is
gem "pg", "1.3.5"
but I just tried brew install pg,
and bundle install fails also.
If anyone could help, I am totally stuck here, thanks!
Cécile

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: cecile rougnaux (#1)
Re: OpenSSL@1.1 not getting linked with Homebrew - trying to install postgresql

cecile rougnaux <cecile_rougnaux@hotmail.com> writes:

when I try to install postgresql with the command
brew install postgresql
I have this error:
Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
Please reinstall openssl@1.1. Sorry :(

You probably need to ask about this in a Homebrew-specific forum,
not here. However, I can comment that this proposed workaround:

For compilers to find openssl@1.1 you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

would need to be applied while *building* Postgres. If you've
already built it, or are trying to install a prebuilt package,
those flag settings won't do anything.

regards, tom lane

#3Dan Davis
dansmood@gmail.com
In reply to: cecile rougnaux (#1)
Re: OpenSSL@1.1 not getting linked with Homebrew - trying to install postgresql

The reason that openssl is not linked is that MacOS already has LibreSSL.
It would be good to build PostgreSQL with LibreSSL on OS X, as LibreSSL is
really more secure, but then again, PostgreSQL on OS X should be only for
development purposes. You may have heard about the heartbleed attack -
LibreSSL is a fork of OpenSSL with older ciphers removed.

One thing you can do is to place openssl in your LD_LIBRARY_PATH and
DYLD_LIBRARY_PATH:

export LD_LIBRARY_PATH=/usr/local/opt/openssl@3/lib
export DYLD_LIBRARY_PATH=/usr/local/opt/openssl@3/lib

If you need it beyond Terminal, then this should force it:

brew link openssl

On Tue, Apr 12, 2022 at 6:34 AM cecile rougnaux <cecile_rougnaux@hotmail.com>
wrote:

Show quoted text

My system is OS Mojave 10.14.6, I got homebrew from this command :

/bin/bash -c "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&quot;

when I try to install postgresql with the command

brew install postgresql

I have this error:

Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
Please reinstall openssl@1.1. Sorry :(

When I try to install openssl@1.1 I have this message:

brew install openssl@1.1
Running `brew update --preinstall`...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/cask).
==> Updated Casks
Updated 8 casks.

Warning: openssl@1.1 1.1.1n is already installed, it's just not
linked.
To link this version, run:
brew link openssl@1.1
➜ / brew link openssl@1.1
Warning: Refusing to link macOS provided/shadowed software: openssl@1.1
If you need to have openssl@1.1 first in your PATH, run:
echo 'export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"' >>
~/.zshrc

For compilers to find openssl@1.1 you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

For pkg-config to find openssl@1.1 you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

And then when I try to force hombrew link openssl, I get this message

Warning: Refusing to link macOS provided/shadowed software:
openssl@1.1
If you need to have openssl@1.1 first in your PATH, run:
echo 'export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"' >>
~/.zshrc

For compilers to find openssl@1.1 you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

For pkg-config to find openssl@1.1 you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

I added the lines to .zshrc file as suggested:

export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

But I kept on having the message when retrying to intall postgresql

Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken

I also tried this command:

brew reinstall openssl

openssl@3 is installed and I get this message:

openssl@3 is keg-only, which means it was not symlinked into
/usr/local,
because macOS provides LibreSSL.

and then when I try to

brew install postgresql

I have the same error:

Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
Please reinstall openssl@1.1.

and The pg version in my rails gemfile is
gem "pg", "1.3.5"
but I just tried brew install pg,
and bundle install fails also.
If anyone could help, I am totally stuck here, thanks!
Cécile

#4Adrian Klaver
adrian.klaver@aklaver.com
In reply to: cecile rougnaux (#1)
Re: OpenSSL@1.1 not getting linked with Homebrew - trying to install postgresql

On 4/12/22 03:33, cecile rougnaux wrote:

My system is OS Mojave 10.14.6, I got homebrew from this command :

 /bin/bash -c "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&quot;

From here:

https://docs.brew.sh/Installation

macOS Catalina (10.15) (or higher) 2

Where 2 is footnote to:

2 10.15 or higher is recommended, while 10.10–10.14 are supported on a
best-effort basis. For 10.4–10.6 see Tigerbrew.

when I try to install postgresql with the command

brew install postgresql

I have this error:

    Error: An exception occurred within a child process:
      RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
    Please reinstall openssl@1.1. Sorry :(

Is openssl@1.1 actually at /usr/local/opt/ ?

--
Adrian Klaver
adrian.klaver@aklaver.com

#5Adrian Ho
ml+postgresql@03s.net
In reply to: cecile rougnaux (#1)
Re: OpenSSL@1.1 not getting linked with Homebrew - trying to install postgresql

On 12/4/22 18:33, cecile rougnaux wrote:

My system is OS Mojave 10.14.6, I got homebrew from this command :

 /bin/bash -c "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&quot;

when I try to install postgresql with the command

brew install postgresql

I have this error:

    Error: An exception occurred within a child process:
      RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
    Please reinstall openssl@1.1. Sorry :(

When I try to install openssl@1.1 I have this message:

Note that the error message is literally asking you to:

brew reinstall openssl@1.1

not:

brew install openssl@1.1

and not:

brew reinstall openssl

Do the reinstall and see if the postgresql formula works now. If it
still doesn't work, the Homebrew discussions forum is a more appropriate
place to follow up: https://github.com/Homebrew/discussions/discussions

Also:

brew link openssl@1.1

and all the exports you said you added to your .zshrc should not be
needed, so you should:

brew unlink openssl@1.1

and revert all your additions.

--
Best Regards,
Adrian

#6cecile rougnaux
cecile_rougnaux@hotmail.com
In reply to: Adrian Ho (#5)
RE: OpenSSL@1.1 not getting linked with Homebrew - trying to install postgresql

Hello Adrian,

As suggested from another user, I am going to reinstall and upgrade my OS to Catalina, which is better supported.
Then I will follow the steps with homebrew and hopefully this will clean the mess I am in 😉
Thanks for your answer!
C
________________________________
De : Adrian Ho <ml+postgresql@03s.net>
Envoyé : mercredi 13 avril 2022 06:16
À : pgsql-general@lists.postgresql.org <pgsql-general@lists.postgresql.org>
Objet : Re: OpenSSL@1.1 not getting linked with Homebrew - trying to install postgresql

On 12/4/22 18:33, cecile rougnaux wrote:
My system is OS Mojave 10.14.6, I got homebrew from this command :

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&quot;

when I try to install postgresql with the command
brew install postgresql

I have this error:

Error: An exception occurred within a child process:
RuntimeError: /usr/local/opt/openssl@1.1 not present or broken
Please reinstall openssl@1.1<mailto:openssl@1.1>. Sorry :(

When I try to install openssl@1.1<mailto:openssl@1.1> I have this message:

Note that the error message is literally asking you to:

brew reinstall openssl@1.1<mailto:openssl@1.1>

not:

brew install openssl@1.1<mailto:openssl@1.1>

and not:

brew reinstall openssl

Do the reinstall and see if the postgresql formula works now. If it still doesn't work, the Homebrew discussions forum is a more appropriate place to follow up: https://github.com/Homebrew/discussions/discussions

Also:

brew link openssl@1.1<mailto:openssl@1.1>

and all the exports you said you added to your .zshrc should not be needed, so you should:

brew unlink openssl@1.1<mailto:openssl@1.1>

and revert all your additions.

--
Best Regards,
Adrian