Question or issue on macOS:
ok, so im running an old Mac 10.6.8 with homebrew. brew doctor reports no errors and i have tried brew prune update etc. Everytime i try to install a package, i get this error:
curl: (77) error setting certificate verify locations: CAfile: /etc/ssl/certs/ca-certificates.crt CApath: /usr/local/etc/openssl/certs
ive tried everything, openssl is installed, but the folder mentioned
/usr/local/etc/openssl/certs
as well as
/etc/ssl/certs/ca-certificates.crt
is not there. can anyone save me?
Full Sample:
jonathan-fullers-iMac% brew install git Updating Homebrew... ==> Installing dependencies for git: xz ==> Installing git dependency: xz ==> Downloading https://downloads.sourceforge.net/project/lzmautils/xz-5.2.3.tar curl: (77) error setting certificate verify locations: CAfile: /etc/ssl/certs/ca-certificates.crt CApath: /usr/local/etc/openssl/certs Trying a mirror... ==> Downloading https://tukaani.org/xz/xz-5.2.3.tar.gz curl: (77) error setting certificate verify locations: CAfile: /etc/ssl/certs/ca-certificates.crt CApath: /usr/local/etc/openssl/certs Error: Failed to download resource "xz" Download failed: https://tukaani.org/xz/xz-5.2.3.tar.gz
brew doctor reports:
jonathan-fullers-iMac% brew doctor Please note that these warnings are just used to help the Homebrew maintainers with debugging if you file an issue. If everything you use Homebrew for is working fine: please don't worry and just ignore them. Thanks! Warning: You are using macOS 10.6. We (and Apple) do not provide support for this old version. You may encounter build failures or other breakages. Please create pull-requests instead of filing issues.
Edit
Found a stray .curlrc file, removed it, now error changed to:
jonathan-fullers-iMac% curl https://github.com curl: (77) error setting certificate verify locations: CAfile: /usr/local/etc/openssl/cert.pem CApath: /usr/local/etc/openssl/certs
But the PEM file is there…:
jonathan-fullers-iMac% pwd && echo "\r\n" && ls /usr/local/etc/openssl cert.pem certs misc openssl.cnf private
Here is my Path, just in case:
jonathan-fullers-iMac% echo $PATH /Users/werlious/.bin: /usr/local/bin: /usr/local/opt/curl/bin: /usr/bin: /bin: /usr/sbin: /sbin: /usr/local/bin: /usr/X11/bin
Another Edit
I tried reinstalling openssl, install gave me no errors but uninstall gave me:
jonathan-fullers-iMac% brew uninstall --ignore-dependencies openssl && brew install openssl Uninstalling /usr/local/Cellar/openssl/1.0.2l... (1,701 files, 12.7MB) dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found Updating Homebrew... dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/opt/curl/bin/curl Reason: image not found
Yet Another Update
So after reinstallingopenssl, i now have this:
jonathan-fullers-iMac% brew install python Updating Homebrew... ==> Installing dependencies for python: readline, sqlite, gdbm ==> Installing python dependency: readline ==> Downloading https://ftp.gnu.org/gnu/readline/readline-7.0.tar.gz curl: (77) error setting certificate verify locations: CAfile: /usr/local/etc/openssl/cert.pem CApath: /usr/local/etc/openssl/certs Trying a mirror... ==> Downloading https://ftpmirror.gnu.org/readline/readline-7.0.tar.gz ==> Downloading from http://mirrors.ibiblio.org/gnu/ftp/gnu/readline/readline-7. ######################################################################## 100.0% ==> Downloading https://ftp.gnu.org/gnu/readline/readline-7.0-patches/readline70 curl: (77) error setting certificate verify locations: CAfile: /usr/local/etc/openssl/cert.pem CApath: /usr/local/etc/openssl/certs Trying a mirror... ==> Downloading https://ftpmirror.gnu.org/readline/readline-7.0-patches/readline ==> Downloading from http://mirror.easthsia.com/gnu/readline/readline-7.0-patche ######################################################################## 100.0% ==> Downloading https://ftp.gnu.org/gnu/readline/readline-7.0-patches/readline70 curl: (77) error setting certificate verify locations: CAfile: /usr/local/etc/openssl/cert.pem CApath: /usr/local/etc/openssl/certs Trying a mirror... ==> Downloading https://ftpmirror.gnu.org/readline/readline-7.0-patches/readline ==> Downloading from http://mirrors.ibiblio.org/gnu/ftp/gnu/readline/readline-7. ######################################################################## 100.0% ==> Downloading https://ftp.gnu.org/gnu/readline/readline-7.0-patches/readline70 curl: (77) error setting certificate verify locations: CAfile: /usr/local/etc/openssl/cert.pem CApath: /usr/local/etc/openssl/certs Trying a mirror... ==> Downloading https://ftpmirror.gnu.org/readline/readline-7.0-patches/readline ==> Downloading from http://mirror.us-midwest-1.nexcess.net/gnu/readline/readlin ######################################################################## 100.0% ==> Patching ==> Applying readline70-001 patching file history.c patching file patchlevel ==> Applying readline70-002 patching file history.c patching file patchlevel ==> Applying readline70-003 patching file input.c patching file patchlevel ==> ./configure --prefix=/usr/local/Cellar/readline/7.0.3_1 ==> make install ==> Caveats This formula is keg-only, which means it was not symlinked into /usr/local, because macOS provides the BSD libedit library, which shadows libreadline. In order to prevent conflicts when programs look for libreadline we are defaulting this GNU Readline installation to keg-only.. For compilers to find this software you may need to set: LDFLAGS: -L/usr/local/opt/readline/lib CPPFLAGS: -I/usr/local/opt/readline/include ==> Summary /usr/local/Cellar/readline/7.0.3_1: 46 files, 1.5MB, built in 3 minutes 6 seconds ==> Installing python dependency: sqlite ==> Downloading https://sqlite.org/2017/sqlite-autoconf-3200000.tar.gz curl: (77) error setting certificate verify locations: CAfile: /usr/local/etc/openssl/cert.pem CApath: /usr/local/etc/openssl/certs Error: Failed to download resource "sqlite" Download failed: https://sqlite.org/2017/sqlite-autoconf-3200000.tar.gz
Im so lost. i have no idea what is goin on from this point
How to solve this problem?
Solution no. 1:
This error message indicates that curl is not able to establish a secure connection using openssl
you can:
first
echo insecure >> ~/.curlrc git config --global http.sslVerify false
then reinstall openssl and curl
HOMEBREW_CURLRC=1 brew reinstall openssl curl
last
sed -i '/^insecure$/d' ~/.curlrc git config --global http.sslVerify true
Solution no. 2:
I found the solution here
Goto the keychain access, and export all the system root certificates into the /usr/local/etc/openssl directory
Solution no. 3:
Stone Info Labs’s solution worked well—
Want to add clarity—
There will/should be a cert.pem file already in /usr/local/etc/openssl
It may be a blank one.
When you export the system root certificate from Keychain,
Certificates.pem will need to be renamed to cert.pem
Otherwise you can copy and paste the raw certificate code into that file.
You’ll be brewin’ in no time.