2010-02-08 80 views
1

我最近放棄了MacPorts的Homebrew,因此我現在遇到make的一些問題。也就是這個錯誤:GCC未定義符號

/Developer/usr/bin/llvm-gcc -rdynamic -o zsh main.o `cat stamp-modobjs` -liconv -ldl -ltermcap -lm -lc 
Undefined symbols: 
    "_libiconv_open", referenced from: 
     llvm bitcode in utils.o 
    "_libiconv_close", referenced from: 
     llvm bitcode in utils.o 
    "_libiconv", referenced from: 
     llvm bitcode in utils.o 
ld: symbol(s) not found 
collect2: ld returned 1 exit status 
make[1]: *** [zsh] Error 1 
make: *** [install.bin] Error 2 

看來這三個庫都沒有關聯或者什麼的。說實話,我是一個Ruby開發人員,從來不需要編譯任何東西,所以不知道該怎麼去解決這個問題。它發生在我從源代碼編譯任何東西時。

在上面的例子是輸出運行make當安裝zsh

回答

1

你爲什麼使用llvm-gcc?爲了獲得最大的兼容性,你最好使用gcc-4.0或gcc-4.2,它們都作爲OS X 10.6開發工具的一部分安裝。

+0

我想這必須是Homebrew(包管理器)正在使用的工具。不知道如何解決這個問題...和想法被讚賞。 – 2010-02-08 22:36:48

+0

Welp ...我結束了只是升級xcode。這工作。 – 2010-02-14 21:24:31

2

的時候似乎libiconv的則沒有鏈接,您確實提供-liconv到命令行,所以它似乎庫未安裝或至少對標準位置中的鏈接器不可用。你有沒有安裝libiconv?

+0

Homebrew - > http://github.com/mxcl/homebrew – 2010-02-08 19:39:58

+0

啊,謝謝內德,我推測自制就像從零開始......問題中的一個鏈接可能不錯...... – wich 2010-02-08 19:43:22