centos升级Git 源代码编译安装

Posted woniuyinhai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos升级Git 源代码编译安装相关的知识,希望对你有一定的参考价值。

准备工作:

CentOS 上的最新git版本也只有1.8.3,就想试着装上最新的版本,没想到差点玩脱,全当记录一次冒险经历

  • Development tools 没装的要装上,不然GCC编译时会出错
# yum -y groupinstall Development tools

 

  • GCC 用于编译安装包
# yum install gcc perl-ExtUtils-MakeMaker

 

  • 再卸载CentOS自带的老版本git
# yum -y remove git

 

下载git并安装

# cd /usr/src
# wget https://www.kernel.org/pub/software/scm/git/git-2.16.2.tar.gz
# tar -zxvf git-2.16.2.tar.gz

安装注意事项:

# cd git-2.16.2
# make prefix=/usr/local/git all

 

此时报错

/usr/src/git-2.12.0/utf8.c:463:对‘libiconv’未定义的引用
libgit.a(utf8.o):在函数‘reencode_string_len’中:
/usr/src/git-2.12.0/utf8.c:524:对‘libiconv_open’未定义的引用
/usr/src/git-2.12.0/utf8.c:535:对‘libiconv_close’未定义的引用
/usr/src/git-2.12.0/utf8.c:529:对‘libiconv_open’未定义的引用
collect2: 错误:ld 返回 1
make: *** [git-credential-store] 错误 1

 

原方案:

# make prefix=/usr/local/git all
# make prefix=/usr/local/git install

解决方案:

可替换为

# ./configure --without-iconv
# make CFLAGS=-liconv prefix=/usr/local/git all
# make CFLAGS=-liconv prefix=/usr/local/git install

 

最后将git加入环境变量

# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
# source /etc/bashrc

 

大功告成!查看一下git的版本

# git --version
>> git version 2.16.2




以上是关于centos升级Git 源代码编译安装的主要内容,如果未能解决你的问题,请参考以下文章

centos6.2 编译安装git 脚本

centos6 编译安装httdp2.4

如何在CentOS 7中安装Git

开发人员学Linux:CentOS7编译安装Git-2.13.1及使用

centos git升级方法

centos编译ffmpeg x264