Protocol “https” not supported or disabled in libc

2019-02-16 07:57发布

问题:

Here's my Podfile content:

platform :ios, ‘8.0’
use_frameworks!

target 'Project-Name' do

pod 'Firebase/Core'
pod 'Firebase/Messaging'

end

Same error occurs while adding pod 'GoogleMaps' into Podfile.

Error while running pod install --verbose command on Terminal:

[!] Error installing Firebase
[!] /usr/local/bin/curl -f -L -o /var/folders/1t/102_4r0x1_3_5dlq8zdbm27r0000gn/T/d20160902-4388-1omozrn/file.tgz https://www.gstatic.com/cpdc/cc5f7aac07ccdd0a/Firebase-3.5.0.tar.gz --create-dirs --netrc-optional

curl: (1) Protocol "https" not supported or disabled in libcurl

Edit 1: How do I enable curl SSL on Mac OS X?

./configure --with-darwinssl not working.

-bash: ./configure: No such file or directory


Edit 2: How do I enable https support in libcurl?

This command brew install curl --with-libssh2 is executed on terminal, but don't know what to do next:

UB:lib aspl$ brew install curl --with-libssh2 --verbose
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
No changes to formulae.

Warning: curl-7.50.1 already installed
UB:lib aspl$ curl --version
curl 7.48.0 (x86_64-apple-darwin14.5.0) libcurl/7.48.0 zlib/1.2.5
Protocols: dict file ftp gopher http imap ldap ldaps pop3 rtsp smtp telnet tftp 
Features: IPv6 Largefile libz UnixSockets 

This command not working:

$ otool -L /usr/local/git/libexec/git-core/git-http-push | grep curl
/usr/lib/libcurl.4.dylib

/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump: '/usr/local/bin/git/libexec/git-core/git-http-push': Not a directory. fatal error: /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: internal objdump command failed Binary file /usr/lib/libcurl.4.dylib matches


Edit:3 Terminal command which git shows /usr/local/bin/git


Edit:4 Enabling HTTPS Support in Curl Installed Through MacPorts on OSX

Running either sudo port install curl +ssl or sudo port uninstall curl says:

sudo: port: command not found

And to install ports(MacPorts) following link is used, which again is an HTTPS link:

$ curl -O https://distfiles.macports.org/MacPorts/MacPorts-2.3.4.tar.bz2

There also a download option of MacPort folder?

But what to do with that downloadedMacPorts-2.3.4 folder?

EDIT 5: Force uninstall curl and installing again didn't work :(

$ brew uninstall curl
Uninstalling /usr/local/Cellar/curl/7.50.1... (366 files, 2.6M)
curl 7.46.0 is still installed.
Remove them all with `brew uninstall --force curl`.
$ brew uninstall --force curl
Uninstalling curl... (360 files, 2.6M)
$ brew install curl --with-libssh2 --verbose
Error: curl 7.50.2 did not build
Logs:
     /Users/aspl/Library/Logs/Homebrew/curl/01.configure
     /Users/aspl/Library/Logs/Homebrew/curl/01.configure.cc
     /Users/aspl/Library/Logs/Homebrew/curl/02.make
     /Users/aspl/Library/Logs/Homebrew/curl/config.log

These open issues may also help:
curl: migrate to openssl@1.1 https://github.com/Homebrew/homebrew-core/pull/4591

回答1:

You might need to update git. One way:

brew install git

More here



回答2:

After I've installed macOS High Sierra, I've encountered the same issue when install firebase via pod.

The trick was to remove the curl and install it again:

curl --version // you will see the https protocol is missing, and the version would be 7.56.1 if you did try to update it before  
brew remove curl 
brew install curl --with-darwinssl // install with darwin instead of openssl 
echo 'export PATH="/usr/local/opt/curl/bin:$PATH"' >> ~/.zshrc // run this 

after you should close & quit all terminal or iTerm, then open it again run brew doctor then run curl --version you should see https in the protocol list

Then you should be good to go :)