Git › dyld: ошибка привязки отложенного символа: символ не найден: _iconv_open

Я не знаю, что случилось, но внезапно все мои команды git больше не будут работать, это сообщение об ошибке, которое я получаю.

$ git show
dyld: lazy symbol binding failed: Symbol not found: _iconv_open
   Referenced from: /usr/local/bin/git
   Expected in: /Applications/MAMP/Library/lib//libiconv.2.dylib

dyld: Symbol not found: _iconv_open
   Referenced from: /usr/local/bin/git
   Expected in: /Applications/MAMP/Library/lib//libiconv.2.dylib

Любая помощь приветствуется, спасибо!

Дополнительная информация: когда я проверяю файл libiconv.2.dylib, он выдает следующее:

$ file /usr/lib/libiconv.2.dylib 
/usr/lib/libiconv.2.dylib: Mach-O universal binary with 2 architectures
/usr/lib/libiconv.2.dylib (for architecture i386):  Mach-O dynamically linked shared       library i386   
/usr/lib/libiconv.2.dylib (for architecture x86_64):    Mach-O 64-bit dynamically linked shared library x86_64

Как я понимаю, должно быть 3 архитектуры. Как добавить третью?

EDIT: это ссылки внутри /Applications/MAMP/Library/lib/

-rwxrwxr-x   1 mm  admin     1194 Jan 22 10:52 libgettextsrc.la
-rwxrwxr-x   1 nm  admin  2241972 Jan 22 11:00 libiconv.2.dylib
lrwxr-xr-x   1 nm  admin       16 Mar  1 10:06 libiconv.dylib -> libiconv.2.dylib

person Samuel    schedule 28.03.2013    source источник
comment
OS X отказалась от поддержки PPC (даже посредством эмуляции) для нескольких основных выпусков, если вы думаете, что это другая архитектура, которая может понадобиться.   -  person Randy Howard    schedule 28.03.2013
comment
Из того, что я понимаю и о чем читал, мне нужно 3 архитектуры, и из примеров я вижу, что это -> /usr/lib/libiconv.2.dylib (для архитектуры ppc7400): Mach-O динамически подключаемая общая библиотека ppc, которая Я скучаю.   -  person Samuel    schedule 28.03.2013
comment
Тогда может быть другая причина этой ошибки? не недостающая Архитектура?   -  person Samuel    schedule 28.03.2013
comment
Не то, что я могу придумать в данный момент, извините. Надеюсь, кто-то еще видел это раньше.   -  person Randy Howard    schedule 28.03.2013
comment
Эээ, /Applications/MAMP/Library/lib//libiconv.2.dylib... почему git тянет оттуда библиотеку? Это символическая ссылка на /usr/lib/libiconv.2.dylib? У вас есть набор LD_LIBRARY_PATH? Что говорит otool -L /usr/local/bin/git?   -  person John Szakmeister    schedule 28.03.2013
comment
В нем говорится, что команда не найдена для otool. Однако в папке /Applications/MAMP/Library/lib/ я нахожу следующее, см. мой пост для информации ^   -  person Samuel    schedule 28.03.2013
comment
stackoverflow.com/a/19457333/894120 устранил эту проблему для меня (путем создания .bash_profile).   -  person Base_v    schedule 19.02.2014


Ответы (3)


У меня также было установлено DYLD_LIBRARY_PATH для моего местоположения XAMPP. Мне удалось это исправить, также добавив usr/lib обратно в DYLD-DYLD_LIBRARY_PATH в .bash_profile.

export DYLD_LIBRARY_PATH=/usr/lib/:$DYLD_LIBRARY_PATH
person flunder    schedule 21.05.2014

Наконец-то разобрался, у меня в .bash_profile был включен DYLD_LIBRARY_PATH, путь был указан к папке mamp, так что git сначала проверяет там библиотеку.

person Samuel    schedule 28.03.2013
comment
Привет @Sam, у меня та же проблема, и мне нужен DYLD_LIBRARY_PATH в моем .bash_profile, что мне делать, чтобы избавиться от ошибки? - person Chris.Zou; 04.05.2014

У меня была аналогичная проблема, когда git не работал, и я получил ту же ошибку. Я управлял горным львом. Я решил запустить все свои обновления, чтобы посмотреть, поможет ли это чему-нибудь. (Mavericks был бесплатным обновлением, поэтому я сделал это.) После завершения обновлений моей ОС я снова попробовал git и получил сообщение «xcode-select: примечание: инструменты разработчика не были найдены в ‘/Applications/Xcode.app’, запрашивая установить. Выберите параметр в диалоговом окне, чтобы загрузить инструменты разработчика командной строки». Я выбрал загрузку в диалоговом окне, установил инструменты xcode и попробовал еще раз, и это сработало как шарм!

person fastone    schedule 08.08.2014