因?yàn)镃entOS 7的yum自帶的版本才1.8.3.1挪丢,而vs code要2.x以上泳叠,所以只能從源碼構(gòu)建
命令:
$ wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz
$ tar -zxvf git-2.9.5.tar.gz
$ cd git-2.9.5/
# 將所有內(nèi)容移動(dòng)到/usr/local下缎脾,也可以使用移動(dòng)命令將git-2.9.5移動(dòng)到/usr/local,后面就可以直接make ...
make prefix=/usr/local all
# 編譯源碼安裝,如果make沒有安裝需要先yum install make
sudo make prefix=/usr/local install
# 安裝成功關(guān)閉終端重新打開凿掂,查看下版本號(hào)
git --version
其中在make prefix=/usr/local all 這步歷經(jīng)坎坷:
錯(cuò)誤1
CC credential-store.o
/bin/sh: cc: command not found
make: *** [credential-store.o] 錯(cuò)誤 127
報(bào)這個(gè)錯(cuò)誤的原因是沒有安裝gcc,需要sudo yum install gcc
錯(cuò)誤2
CC credential-store.o
In file included from cache.h:4:0,
from credential-store.c:1:
git-compat-util.h:280:25: 致命錯(cuò)誤:openssl/ssl.h:沒有那個(gè)文件或目錄
#include <openssl/ssl.h>
^
編譯中斷纹蝴。
make: *** [credential-store.o] 錯(cuò)誤 1
報(bào)這個(gè)錯(cuò)誤的原因是沒有安裝libssl-dev庄萎,需要sudo yum install openssl-devel
錯(cuò)誤3
tp.h:6:23: 致命錯(cuò)誤:curl/curl.h:沒有那個(gè)文件或目錄
#include <curl/curl.h>
^
編譯中斷。
make: *** [http.o] 錯(cuò)誤 1
報(bào)這個(gè)錯(cuò)誤的原因是缺少libcurl-dev or libcurl-devel骗灶,需要sudo yum install libcurl-dev libcurl-devel
錯(cuò)誤4:使用make prefix=/usr/local all時(shí)報(bào)錯(cuò):
http-push.c:18:19: 致命錯(cuò)誤:expat.h:沒有那個(gè)文件或目錄
#include <expat.h>
^
編譯中斷惨恭。
make: *** [http-push.o] 錯(cuò)誤 1
報(bào)這個(gè)錯(cuò)誤的原因是缺少expat,需要sudo yum install expat-devel
錯(cuò)誤5
/usr/bin/perl Makefile.PL PREFIX='/usr/local' INSTALL_BASE='' --localedir='/usr/local/share/locale'
Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 3.
BEGIN failed--compilation aborted at Makefile.PL line 3.
make[1]: *** [perl.mak] 錯(cuò)誤 2
make: *** [perl/perl.mak] 錯(cuò)誤 2
報(bào)這個(gè)錯(cuò)誤的原因是缺少對(duì)應(yīng)的包耙旦,需要sudo yum install perl-ExtUtils-MakeMaker