【问题标题】:Error compiling Git via Home Brew通过 Home Brew 编译 Git 时出错
【发布时间】:2011-08-17 19:39:36
【问题描述】:

通过 Homebrew 编译 Git 时遇到问题

错误:执行失败:make prefix=/usr/local/Cellar/git/1.7.6 install

我已删除并重新安装 Homebrew,还重新安装了 Xcode 3.2.6

系统: Mac OS X 10.6.8

有什么想法吗?

更新:

这是错误跟踪的结尾。不知道还能去哪里看。希望这会有所帮助。

referenced  from :
 " _libiconv",      referenced _reencode_stringfrom: 
_reencode_stringin  libgit.a(inutf8.o )libgit.a
( utf8.o )"
_libiconv_close " ," _libiconv_close",    referencedreferenced  from   _reencode_string infrom:
   :  
  libgit.a_reencode_string(  in  utf8.o    libgit.a_reencode_string( utf8.oin) 
libgit.a ()utf8.o)
   "  _libiconv_close " ,
  referenced    _reencode_string  from:in
  libgit.a( _reencode_string utf8.o )
ld in :   _reencode_string symbol(s) not found
 in libgit.a(utf8.o)
ld: symbol(slibgit.a) not( utf8.o)
found 
     _reencode_string in libgit.a(utf8.o)
ld: symbol(s) not found
collect2: collect2: Undefinedld returned 1 exit status 
symbols:
  "ld returned 1 exit status_libiconv_open"
, referenced from:
      _reencode_string in libgit.a(utf8.o)
  "_libiconvcollect2: ", referencedld returned 1 exit status 
from:
      _reencode_string in libgit.a(utf8.o)
  "_libiconv_close", referenced from:
      _reencode_string in libgit.a(utf8.o)
      _reencode_string in libgit.a(utf8.o)

ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [git-daemon] Error 1
make: *** Waiting for unfinished jobs....
make: *** [git-fast-import] Error 1
make: *** [git-imap-send] Error 1
make: *** [git-shell] Error 1
==> Exit Status: 2
http://github.com/mxcl/homebrew/blob/master/Library/Formula/git.rb#L37
==> Environment
HOMEBREW_VERSION: 0.8
HEAD: 63da621a3fb430cb9ae757a09077890be8aa689e
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_REPOSITORY: /usr/local
HOMEBREW_LIBRARY_PATH: /usr/local/Library/Homebrew
Hardware: quad-core 64-bit arrandale
OS X: 10.6.8
Kernel Architecture: i386
Ruby: 1.8.7-174
/usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
Xcode: 3.2.6
GCC-4.0: build 5494 
GCC-4.2: build 5666 
LLVM: build 2335 
MacPorts or Fink? false
X11 installed? true
==> Build Flags
CC: /usr/bin/cc => /usr/bin/gcc-4.2
CXX: /usr/bin/c++ => /usr/bin/c++-4.2
LD: /usr/bin/cc => /usr/bin/gcc-4.2
CFLAGS: -O3 -w -pipe
CXXFLAGS: -O3 -w -pipe
MAKEFLAGS: -j4

不确定是否值得注意,但跟踪显示 Ruby 1.8 而ruby -v 给出一个红宝石 1.9.2p180

好的,我已经更新了错误跟踪。

【问题讨论】:

  • 不知道您发布的内容。请显示更多错误信息。
  • 在错误日志中,通常是第一个错误,与日志结尾无关

标签: git gcc homebrew


【解决方案1】:

ld: symbol(s) not found 发生在您没有安装所需的库依赖项时,或者由于某种原因在编译行中缺少它的包含或目标文件的包含。如果不知道找不到 what 符号,就无法提供进一步的帮助。您只是在错误消息的大部分内容处截断。这就像进入一部神秘小说的最后一章并发现它被撕掉了:-)

【讨论】:

    【解决方案2】:

    我通过将/usr/local 中的libinclude 目录重命名为lib_oldinclude_old,然后运行brew install git 来解决此问题,不幸的是,这可能会破坏依赖于这些目录的其他代码。 ..

    通过此讨论:https://github.com/mxcl/homebrew/issues/1948#issuecomment-326283

    【讨论】:

      猜你喜欢
      • 2018-09-18
      • 2015-05-16
      • 1970-01-01
      • 2015-04-10
      • 1970-01-01
      • 1970-01-01
      • 2016-05-06
      • 1970-01-01
      • 2018-07-06
      相关资源
      最近更新 更多