Неопределенные символы GCC
Вопрос
Недавно я отказался от MacPorts ради Домашнее пиво, в результате у меня теперь возникают некоторые проблемы с make
.А именно эта ошибка:
/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
Решение
Почему вы используете llvm-gcc?Для максимальной совместимости лучше использовать gcc-4.0 или gcc-4.2, которые оба установлены как часть инструментов разработчика в OS X 10.6.
Другие советы
Кажется, libiconv не связан, вы предоставляете -liconv в командной строке, поэтому кажется, что библиотека не установлена или, по крайней мере, недоступна компоновщику в стандартных расположениях.У вас установлен libiconv?