我正在使用命令git clone ssh:// ....并在终端上收到以下错误:
dyld: lazy symbol binding failed: Symbol not found: ___strlcpy_chk
Referenced from: /usr/local/git/bin/git
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: ___strlcpy_chk
Referenced from: /usr/local/git/bin/git
Expected in: /usr/lib/libSystem.B.dylib
Trace/BPT trap: 5
答案 0 :(得分:34)
我需要从Xcode安装命令行工具。为此 -
Cmd
+ ,
答案 1 :(得分:22)
有同样的问题。我有OS X 10.8,所以XCode不适合我。
原来我有一个与我的OS X版本不兼容的Git版本
此信息可能有所帮助(发现它谷歌搜索:)):
如果您正在运行:
您可以从这里下载: http://sourceforge.net/projects/git-osx-installer/files/
答案 2 :(得分:5)
我也遇到了同样错误的麻烦。我尝试了PATH和.bash_profile技巧(没有帮助)。我对安装Xcode以及随后的命令行工具'并不感兴趣。正如其他人的建议。但我偶然发现了半个答案。
首先,我卸载了当前版本的Git(1.9.2)。然后我发现可以自己安装命令行工具,而无需安装Xcode:
Xcode page: https://developer.apple.com/xcode/
Downloads near the top
Scroll down to 'Additional Tools'->'View Downloads'
Command Line Tools (OS X Mountain Lion)
安装完成后,执行git --version'退了这个:
git version 1.8.5.2 (Apple Git-48)
文件" /usr/lib/libSystem.B.dylib"在这个过程中没有受到影响。或者至少,文件大小和日期没有改变。由于该库没有改变,我猜测Xcode不是修复东西,而是安装了Git的版本。
我考虑过测试该理论并找到各种版本的Git的旧源代码,但是没有时间花时间编译/安装/测试每一个,看看这个理论是否正确。我没有看到卸载“命令行”工具的简单方法。也许其他人更加强悍。 :)
- J
答案 3 :(得分:2)
还可以查看https://stackoverflow.com/a/19457333/894120,然后创建一个适合我的.bash_profile。
答案 4 :(得分:1)
问题是git维护者只支持MaxOS10.9(mavericks)。如果您有早期版本,则无法使用其分发版。
其他人推荐使用(home)brew。基本上安装brew后,您只能使用:
brew install git
它将为您提供最新版本。随后获取新版本使用:
brew upgrade git
现在brew本身使用git,所以可能是这个安装是递归的 - 我最近必须安装它用于其他目的,它花了我几个小时 - 但是一旦你有它,事情应该没问题。我只能说,当我最初安装brew时,“git”仍然提到1.8.x Apple版本,并且通过这个改变我现在得到git v2.1.0。
答案 5 :(得分:1)
我也被git困扰着可怕的事情:
dyld: lazy symbol binding failed: Symbol not found: ___strlcpy_chk
Referenced from: /usr/local/bin/git
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: ___strlcpy_chk
Referenced from: /usr/local/bin/git
Expected in: /usr/lib/libSystem.B.dylib
在阅读了许多成功执行的建议后,围绕更新xCode(> 2G)或只是xCode(~200M)的命令行工具部分,我安装了命令行工具,这解决了我在命令行中使用git时遇到的问题。
有趣的是,即使我做了更新,我也遇到了PyCharm遇到同样错误的问题。我能够通过改变找到git的路径来解决这个问题(在PyCharm-> Preferences ...-> Version Control-> Git,我将/ usr / local / bin / git更改为/ usr / bin / git靠近顶部):
Image of PyCharm->Preferences...->Version Control->Git
我终于弄明白到底发生了什么 - 并向我从网上收到的所有帮助表示敬意,想要分享细节:
我发现我的机器上安装了两个版本的git:
/usr/bin/git
/usr/local/git/bin/git
(also interestingly: /usr/local/bin/git -> ../git/bin/git)
将/ usr / bin放在路径中的一些建议有些帮助,但可能无法解决安装的git版本无效的琐碎问题。
请注意:
$ pwd
/usr/local/git/bin
$./git --version
git version 2.8.1
和
$ pwd
/usr/bin
$ ./git --version
git version 1.8.5.2 (Apple Git-48)
Apple git版本是可行的 - 这是可能通过从xCode安装命令行工具安装的版本。注意每个中的路径。另请注意,您不一定要安装整个命令行工具,只需安装适当版本的git。
此外,在/ usr / local / git / bin /目录中,有一个uninstall.sh脚本。在该脚本中,它使用pkgutil来卸载git的版本。 (您应该使用此脚本进行卸载。)您可以运行此行来验证此实用程序是否具有安装git的记录:
pkgutil --packages | grep com.git.pkg
这不是您想要的版本。你想要Apple版。使用/ usr / local / git / bin中的脚本卸载损坏的git版本。
卸载它可确保您永远不会收到此错误,并且您将使用正确版本的git。
希望能帮助其他人。信息很好但不完整。 PyCharm几乎没有任何东西。