VTK dyld: библиотека не загружена: libvtkDomainsChemistryOpenGL2-7.1.1.dylib

Я пытаюсь изучить VTK, и когда я выполняю код учебника, я получаю эту ошибку:

dyld: библиотека не загружена: libvtkDomainsChemistryOpenGL2-7.1.1.dylib

Где эта библиотека?

Я использую macOS Sierra и устанавливаю vtk следующим образом: введите здесь описание ссылки

Можете вы помочь мне?


person Mameli Marco    schedule 20.04.2017    source источник
comment
Ваша проблема, вероятно, похожа на ту, которую я только что описал здесь   -  person normanius    schedule 07.12.2017


Ответы (1)


Правильный выбор флагов cmake наверняка поможет решить вашу проблему. Чтение вопросов и ответов этот пост SO может быть полезным.

Я не совсем уверен, что вы точно следовали указанным инструкциям, потому что в отрывке из CMakeCache (см. здесь, пункт 5 ), BUILD_SHARED_LIBS был отключен. Однако ваша проблема указывает на то, что ваш двоичный файл был связан динамически. Здесь мне не хватает подробностей о вашей настройке.

Позвольте мне поделиться командой cmake, которую я использовал для сборки vtk (с оболочкой python и общими библиотеками). Это работало для vtk 7.x.

mkdir build
cd build
INSTALL_DIR="/opt/dev/versions/vtk/vtk-7.1.0-shared"
cmake .. -DCMAKE_BUILD_TYPE=Release \
         -DVTK_WRAP_PYTHON=ON \
         -DBUILD_EXAMPLES=OFF \
         -DBUILD_SHARED_LIBS=ON \
         -DBUILD_TESTING=OFF \
         -DCMAKE_INSTALL_PREFIX="$INSTALL_DIR" \
         -DCMAKE_MACOSX_RPATH=ON \
         -DCMAKE_INSTALL_RPATH="$INSTALL_DIR/lib" \
         -DPYTHON_INCLUDE_DIR="/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/" \
         -DPYTHON_LIBRARY="/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib"
make -j8
make install

Обратите внимание, что мне пришлось установить флаги, связанные с python, чтобы убедиться, что используется правильная среда python. (Часто на Mac доступно несколько сред python: python, распространяемый самой MacOS, пользовательский python, установленный через homebrew или macports, или фреймворк, полученный через www.python.org. Для меня применим третий вариант.)

person normanius    schedule 08.12.2017