【问题标题】:git + mountain lion + dyld: lazy symbol binding failed: Symbol not found: ___strlcpy_chkgit +山狮+ dyld:懒惰的符号绑定失败:找不到符号:___strlcpy_chk
【发布时间】:2014-04-07 18:43:25
【问题描述】:
  • 操作系统:mac os 10.8.3
  • xcode: 4.6.3 w 已安装命令行工具
  • /usr/local/bin/git -> /usr/local/git/bin/git

任何想法如何解决?

(我能够找到关于所提到主题的讨论线程 a)安装命令行工具和 b)确保 /usr/local/bin 包含在 PATH 中,我似乎都在这里完成了.)

提前谢谢你。

git init
dyld: lazy symbol binding failed: Symbol not found: ___strlcpy_chk
  Referenced from: /usr/local/bin/git
  Expected in: /usr/lib/libSystem.B.dylib

【问题讨论】:

  • 我还应该补充一点,我可以使用 mac 的 github 客户端在同一位置创建新的存储库

标签: macos git


【解决方案1】:

这个问题是因为我安装了git-2.2.1-intel-universal-mavericks.dmg,其实mavericks(10.9.x)mountain lion(10.8.x)之后的版本,而snow-leopard是山狮之前的版本,我安装了git-2.2.1-intel-universal-snow-leopard之后,这个问题就没有了。

【讨论】:

  • 谢谢。我也在运行 osx 10.8.5 和 Xcode 5.0.1。这对我来说是解决方案。
  • 它也帮助了我:)
  • 有点老话题了,但是在下载最新版本的 git 然后尝试使用自动完成时遇到了同样的问题。使用 SourceForge 的 git-2.3.5-intel-universal-snow-leopard 重新安装解决了这个问题!
【解决方案2】:

我遇到了完全相同的问题,这就是我解决它的方法,

关注这篇文章到install command line tools 获取xCode(我得到了xCode 5.1)。

然后还编辑了我的 .bash_profile

$vi ~/.bash_profile

export PATH=$PATH:/usr/local/git/bin/

即使做了这两件事,我在 git 命令行中也遇到了同样的错误。但后来我重新启动我的电脑让它工作。

希望这会有所帮助。

【讨论】:

  • 谢谢塔努。不幸的是,在我的情况下,重启并没有起到作用。
  • 哦,很遗憾听到这个消息 :(,可能会尝试将您的 xCode 升级到 5.1.1,看看情况如何。
  • 这对我有用,只是一点旁注:我必须先创建 .bash_profile 并添加您发布的行。重启后就可以了。
  • 只需按照以下建议下载 git-2.2.1-intel-universal-snow-leopard.dmg,无需为此下载和安装 >4GB xcode
  • 对于 Mountain Lion 上的任何人,您的问题可能是您已经为 Mavericks 安装了 Git 2.2.1。访问下载页面并选择 Snow Leopard 安装。这解决了我的问题,而重新安装命令行工具并与其他废话混为一谈并没有。如果您确实安装了命令行工具,它将包含旧版本的 Git,因此为确保您使用的是 2.2.1(或您阅读本文时的任何版本),只需将 /usr/local/git/bin 添加到您的 PATH
【解决方案3】:

奥纳, 我也遇到了您引用的相同错误消息的麻烦。我尝试了 PATH 技巧(没有帮助)。我对安装 Xcode 和其他人建议的“命令行工具”并不感兴趣。但我确实偶然发现了一半的答案。

首先,我卸载了当前版本的 Git (1.9.2)。然后我发现可以自己安装命令行工具,而无需安装Xcode:

Xcode 页面:https://developer.apple.com/xcode/ ->

靠近顶部的下载 ->

向下滚动到“其他工具”->'

查看下载'-> 命令行工具(OS X Mountain Lion)

安装这些后,执行 'git --version' 会返回:

git version 1.8.5.2 (Apple Git-48)

在此过程中,文件“/usr/lib/libSystem.B.dylib”未被触及。或者至少,文件大小和日期没有改变。

我猜这个问题是在更新版本的 git 中创建的,它正在检查有问题的符号,而旧版本不检查它。我考虑过测试该理论,并找到了各种 Git 版本的较旧源代码,但没有时间花时间编译/安装/测试每个版本以查看该理论是否正确。而且我没有看到卸载“命令行工具”的简单方法。也许其他人更勇敢。 :)

--J

【讨论】:

  • 如其他地方所述,这并不能真正解决问题:它说明了如何安装 Apple 自己的 git 二进制文件,现在已经很旧了,而不是如何获得最新版本。
  • 正确,它没有安装最新版本。但是,最初的问题,也不是所描述的修复(或在我的情况下是半修复),但从未将其限制为或将其描述为安装最新版本。
【解决方案4】:

如果您使用的是 SourceTree,它带有自己的 git 版本,上述解决方案将不起作用。您必须转到 Preferences>Git 并将设置从 Embedded git 更改为 System git

(在我弄清楚这一点之前,我为此苦苦挣扎了大约一天,希望它能为某人省去麻烦)

【讨论】:

    猜你喜欢
    • 2013-03-18
    • 2013-10-27
    • 2011-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多