Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 制造及保养&;sudo-make-install不';行不通_Git_Macos_Curl_Makefile - Fatal编程技术网

Git 制造及保养&;sudo-make-install不';行不通

Git 制造及保养&;sudo-make-install不';行不通,git,macos,curl,makefile,Git,Macos,Curl,Makefile,我在OSX10.6.6上尝试升级git和curl $ cd ~/Downloads/git-1.7.4.1 $ make && sudo make install ... $ git --version git version 1.7.3.2 它在屏幕上滚动,似乎工作正常,但当我打印git的版本时(这也发生在curl上),我仍然会得到旧版本。我需要做什么来解决这个问题 我可以通过.dmg文件安装git的最新版本,但curl没有 有什么提示吗?查看安装的输出。它将可执行文件放在哪

我在OSX10.6.6上尝试升级
git
curl

$ cd ~/Downloads/git-1.7.4.1
$ make && sudo make install
...
$ git --version
git version 1.7.3.2
它在屏幕上滚动,似乎工作正常,但当我打印
git
的版本时(这也发生在
curl
上),我仍然会得到旧版本。我需要做什么来解决这个问题

我可以通过.dmg文件安装git的最新版本,但curl没有


有什么提示吗?

查看安装的输出。它将可执行文件放在哪里?如果在
$PATH
中有两个版本的git,那么可能是它找到了错误的版本。您确定没有发生错误吗?

它安装在
/usr/local/bin/git
中,
/usr/bin/git
$PATH
中排在第一位。当然,不是这样。我不想更改
$PATH
中的顺序,因为我不确定其他地方的副作用。那么,我如何告诉sudo make install安装到
/usr/bin/git
?或者我应该一起删除
/usr/bin/git
中的文件吗?当运行
/configure
时,您可以说明将文件安装到何处。像这样:
/configure--prefix=/the/path
。这使得它可以安装(在运行
makeinstall
时)用户二进制文件到
/path/bin
,系统二进制文件到
/path/sbin
,配置文件到
/path/etc
,等等(如果适用)。但是,如果您没有使用
/usr/bin/git
,并且是您自己安装的(或者您不希望所有版本都安装在一起),那么您最好将其删除。非常感谢!正如您所说,只需运行
/configure--prefix=/usr
,它就重写了以前的安装。但我想我会完全删除它,或者从
/usr/bin/git
->
/usr/local/bin/git
创建一个符号链接,这是个坏主意。现在,您将软件包管理器与系统上安装的内容混淆。您应该在$PATH前面加上前缀/usr/local/bin。这就是/usr/local的作用。