VTK dyld:未加载库:libvtkDomainsChemistryOpenGL2-7.1.1.dylib

时间:2017-04-20 10:30:09

标签: c++ vtk

我尝试学习VTK,当我执行教程代码时,它给了我这个错误:

dyld:未加载库:libvtkDomainsChemistryOpenGL2-7.1.1.dylib

这个图书馆在哪里?

我使用macOS Sierra,我通过这个安装vtk: enter link description here

你能帮助我吗?

1 个答案:

答案 0 :(得分:0)

正确选择cmake标志肯定有助于解决您的问题。阅读this SO post的问答可能会有所帮助。

我并不完全相信您是否完全遵循了引用的说明,因为在CMakeCache(see here, point 5)的摘录中,BUILD_SHARED_LIBS被禁用。但是,您的问题表明您的二进制文件是动态链接的。在这里,我错过了有关您的设置的更多详细信息。

让我分享一下我用来构建vtk的cmake命令(使用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环境:MacOS本身分发的python,通过自制软件或macports安装的用户python,或者通过www.python.org获得的框架。对我来说,应用了第三个选项。)