创作立场声明
主要记录本人在学习过程中遇到的问题,并记录在册,方便查阅
安装准备
安装环境:
- centos 7
- git最新版:(截止2020.05.19,最新版本为git-2.26.2)下载地址
- winscp
安装流程
- 下载git安装包:
- 使用wget方法下载
键入命令 wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz 进行下载即可
- 使用winscp上传
先点击下载地址,获得安装包后,通过winscp或xshell等软件上传到linux环境中
- 解压git安装包
tar -zxvf git-2.26.2.tar.gz
解压完进入git-2.26.2,接下来的操作都是要在git目录里
- 安装依赖
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
- 移除旧版git
yum -y remove git
- make编译git包
make configure
./configure --prefix=/usr/local/git
make install
可能会踩坑的点:
出现collect2: error: ld returned 1 exit status的错误:
根据traceback可以发现是anaconda3的libcurl出现错误
因为在 ./configure 的时候,会去 anaconda 里面找相关依赖库,而不去系统库找。 所以我们一开始安装了 curl,curl-devel 的依赖也就没有用了
这里可以先去修改环境变量,使make的时候使用centos7默认的lib进行编译,则可解决
vi /root/.bashrc
暂时注释掉anaconda的目录,保存
source ~/.bashrc
echo $PATH
确认修改之后的环境变量没有anaconda的路径
然后再执行一次
make install
安装成功
- 配置环境变量
vi /root/.bashrc
在文件结尾加上
export PATH="/usr/local/git/bin:$PATH"
保存完成后,使环境变量生效
source /root/.bashrc
检验一下,查看一下git的版本
git --version
学习总结
- 编译过程中可能会因为系统的环境变量path中导向不同的lib包,导致安装失败