Khi tôi cố gắng $ brew update
Tôi nhận được lỗi:Làm cách nào để bật hỗ trợ https trong libcurl?
error: Protocol https not supported or disabled in libcurl while accessing https://github.com/mxcl/homebrew/info/refs?service=git-upload-pack
Tuy nhiên, khi tôi $ curl --version
, tôi thấy:
curl 7.21.4 (x86_64-apple-darwin12.2.0) libcurl/7.21.4 OpenSSL/0.9.8y zlib/1.2.5 libidn/1.20
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp
Features: IDN IPv6 Largefile NTLM SSL libz
Trừ khi tôi là thiếu cái gì, mà có vẻ tốt với tôi. Lưu ý rằng https
được liệt kê trong danh sách giao thức.
$ which curl
mang lại một phản ứng đáng ngờ:
/usr/local/php5/bin/curl
Hmmmmm ... có lẽ brew
đang sử dụng một khác nhau curl
(như tại /usr/bin/curl
). Hãy xem:
$ /usr/bin/curl --version
curl 7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8y zlib/1.2.5
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate IPv6 Largefile NTLM NTLM_WB SSL libz
Được rồi, nó rõ ràng là một khác nhau cài đặt của curl
, nhưng nó cũng niêm yết https
trong danh sách các giao thức, và có thông tin OpenSSL có quá.
BTW: Tôi gặp lỗi tương tự nếu tôi cố gắng sử dụng URL https
với bất kỳ repo nào trên máy của mình git
.
Câu hỏi:
Làm thế nào tôi có thể xác định đường dẫn đếncurl
rằngbrew
đang sử dụng?- Làm cách nào để bật hỗ trợ cho
https
tronglibcurl
?
UPDATE: tôi đã có thể để xác định đường dẫn đến libcurl.4.dylib
rằng git
(và brew
) đang sử dụng bằng cách làm theo phương pháp deltheil của bên dưới. Đường dẫn là:
/usr/lib/libcurl.4.dylib (compatibility version 6.0.0, current version 6.1.0)
Vì vậy, tôi cố gắng này:
$ brew install curl --with-libssh2
May mắn curl có sẵn tại một tổ chức phi SSL URI, vì vậy nó thực sự đã làm insstall. Nó không liên kết tượng trưng thành /usr/local
, nhưng điều đó tốt với tôi (tôi nghĩ). Vì vậy, tôi đã làm điều này:
$ cd /usr/lib
$ mv libcurl.4.dylib libcurl.4.dylib.bk
$ ln -s /usr/local/Cellar/curl/7.30.0/lib/libcurl.4.dylib libcurl.4.dylib
$ brew update
Nhưng nó vẫn còn ném cho tôi lỗi này:
error: Protocol https not supported or disabled in libcurl while accessing https://github.com/mxcl/homebrew/info/refs?service=git-upload-pack
Vì vậy, bây giờ câu hỏi độc quyền trở thành: Làm thế nào để kích hoạt tính năng hỗ trợ cho https
trong libcurl
?
Cảm ơn @deltheil, bạn đã cho tôi nửa đường. Tôi đã cập nhật câu hỏi với tiến trình hiện tại. –
Chắc chắn có điều gì đó sai ở đâu đó vì 'git' được liên kết đúng với hệ thống libcurl, có hỗ trợ cho https. Điều đó đang được nói bạn nên ** không bao giờ, bao giờ ** sửa đổi các tập tin hệ thống của bạn dưới '/ usr/bin','/usr/lib', et al. Tôi khuyên bạn nên chạy một 'brew doctor' và kiểm tra [Github HTTPS cloning errors] (https://help.github.com/articles/https-cloning-errors) trang này. – deltheil
Hoặc bạn có thể muốn cài đặt đúng 'git' qua Homebrew với tùy chọn' with-brewed-curl' để 'git' sử dụng' curl' từ brew phụ thuộc vào 'darwinssl' để hỗ trợ SSL. – deltheil