dyld: символ не найден: __ZdaPvm - запуск KING в Mac OS X

У меня проблема с запуском KING на Mac OS X Я думаю, это связано с ошибкой ссылки dyld. Кто-нибудь есть какие-либо предложения о том, как исправить эту ошибку?

Заранее спасибо.

   > ./king -b ./ex/ex.bed

Возвращает:

dyld: Symbol not found: __ZdaPvm
  Referenced from: /Users/gaelgarcia/Downloads/./king (which was built for Mac OS X 10.13)
  Expected in: /usr/local/lib/libstdc++.6.dylib
 in /Users/gaelgarcia/./king
Abort trap: 6

1 ответ

Решение

У меня были похожие проблемы при попытке использовать предоставленную предварительно скомпилированную версию Mac. Мне удалось получить работающую версию, собранную из исходного кода, в следующем каталоге:

clang++ -L /opt/local/lib/libomp/ -lm -lz -O2 -fopenmp -o king *.cpp

сначала установив libomp в вышеуказанный каталог. Я использую Macports, поэтому я сделал это с

port install libomp

Для пользователей Homebrew, похоже, рекомендуется просто установить llvm , который теперь включает поддержку OpenMP напрямую.


РЕДАКТИРОВАТЬ: установив llvm через доморощенный (brew install llvm), команда, которая правильно собрала и запустила KING на моей Mac OS 10.12:

/usr/local/Cellar/llvm/6.0.0/bin/clang++ -I /usr/local/Cellar/llvm/6.0.0/include -L /usr/local/Cellar/llvm/6.0.0/lib -O2 -fopenmp -lm -lz -o king *.cpp

Запуск недавно построенного исполняемого файла с примером .bed файл предоставлен:

> ./king -b ../ex/ex.bed

KING 2.1.3 - (c) 2010-2018 Wei-Min Chen

The following parameters are in effect:
Binary File :    ../ex/ex.bed (-bname)

Для таких, как я, ищущих ответ спустя годы, мне удалось решить эту проблему, установив gcc с Homebrew.

brew installgcc 

который включает libgfortran. Возможно, в этом нет необходимости, поскольку dyld был установлен в Anaconda, но я обнаружил, что это самый простой способ заставить King работать на моем Mac.

Изменить: мне также пришлось установить DYLD_LIBRARY_PATH в моем профиле bash, перейдя

nano ~/.bash_profile

и добавление

export DYLD_LIBRARY_PATH=/opt/local/lib/libgcc/

или где угодно динамическая библиотека libgcc_s.1.dylib когда вы ищете его на своем компьютере.

Другие вопросы по тегам