linux – 从源代码编译新的二进制文件时会发生什么?
作者:互联网
我已经通过包管理器安装了来自存储库的git后,我从源代码编译了git.
在这个过程中,“from source”git取代了“主要系统git”.
user@jeanny:~$git --version
git version 1.8.3.2
有没有办法将回购中的git设置为“主系统git”?
解决方法:
您可以通过执行以下操作来确认:
$/usr/bin/git --version
$/usr/local/bin/git --version
您现在可能已经安装了2个版本的git,这是完全没问题的,只要它们保存在不同的目录中即可.
新编译的git很可能是目录/usr/local/bin中的版本.
您可以使用$PATH环境变量通过控制$PATH中事物的显示顺序来控制使用哪个git.
例如:
> git的系统版本是默认的
PATH=/usr/bin:/usr/local/bin
>新编译的git版本是默认版本
PATH=/usr/local/bin:/usr/bin
替代方案呢?
OP在评论中询问了以下后续问题:
Where does update-alternatives fit into this picture?
Alternatives is a mechanism允许您的系统通过在/usr/bin目录中放置一个由软件管理的链接,将/usr/bin中未安装的工具合并到/usr/bin中.一个例子说它最好.在我的系统上,Java作为替代应用程序进行管理:
$ls -l /usr/bin/java
lrwxrwxrwx. 1 root root 22 Dec 26 2010 /usr/bin/java -> /etc/alternatives/java
您可以通过/usr/bin下的上述链接来判断.鉴于这是由备选方案管理的链接不会改变链接仍在目录/usr/bin下的事实.因此,当我们如上所述操纵$PATH时,替代方案不是问题.
标签:linux,package-management,compiling,alternatives 来源: https://codeday.me/bug/20190816/1670176.html