使用openssl-dev替换guntls
为什么会有这种需求呢?今天在拉取Android源码时,使用了机场梯子有点抽风,访问网页内容倒是没什么问题。
但拉取Github库时一直guntls_handshake()faild:The TLS connection was non-properly terminated,前后鼓搞了各种代理github还是没解决。(其实还是机场路线的问题,自己后来搭的就没此问题)
这篇文章是为了解决遇到此问题,而不想自己搭科学的的这部分人。
废话不多说,ubuntu先去软件更新那里打开source code,免得后面步骤无法编译
sudo apt-get install build-essential fakeroot dpkg-dev
mkdir ~/git-openssl && cd git-openssl
sudo apt-get source git build-dep git
然后
sudo vim /etc/apt/sources.list
把里面的带# deb-src全部删掉#注释,保存
然后
sudo apt update
sudo apt-get build-dep git
sudo apt-get install libcurl4-openssl-dev
sudo dpkg-source x git_2.*.dsc //这里版本不一样
cd git_2.*
sudo vim debian/control
修改里面的libcurl4-guntls-dev为libcurl4-openssl-dev
接着
sudo dpkg-buildpackage -rfakeroot -b
cd ..
sudo dpkg -i git_2.*-ubuntu3_amd64.deb //版本不一样,更新很快
完成!
如果觉得麻烦,换个机场就行,可能某些机场线路被限制了