如何在支持Cocoa / XCode的情况下为OSX 10.8安装VTK 6.1?

时间:2013-06-26 19:54:27

标签: macos vtk

http://www.vtk.org/Wiki/Cocoa_VTK发布的极其有用的指导原则以及由VTK回购中的Sean McBride和Mike Jackson发布的自述文件对于VTK 6.1略有过时。所以如果这有助于任何人,我发布了在OSX 10.8上安装VTK 6.1的说明,并支持SimpleCocoaVTK Xcode项目。

4 个答案:

答案 0 :(得分:13)

*使用Cocoa支持安装VTK 6.1 for OSX 10.8

这些说明略微修改了Ryan Glover在http://www.vtk.org/Wiki/Cocoa_VTK的说明以及Sean McBride和Mike Jackson在VTK / Examples / GUI / Cocoa / Documentation文件夹中的README.rtf。

  1. 将VTK git repo克隆到您选择的目录中:

      

    cd / Users / you /

         

    git clone https://github.com/Kitware/VTK.git

         

    cd VTK

         

    git checkout tags / v6.1.0

  2. 制作构建目录

      

    mkdir VTKBuild

         

    cd VTKBuild

  3. 运行VTK cmake脚本

    • 您现在将进入/ Users / you / VTK / VTKBuild,从此处运行cmake(使用父目录的CMake文件):
      

    cmake ..

  4. 在新生成的CMakeCache.txt(在当前的VTKBuild目录中)中编辑许多行。我遇到的一个问题是,如果我没有使用CMAKE_INSTALL_PREFIX的完整路径,则会出现错误。因此,请务必使用“/ Users / you /”而不是“〜”:

    CMAKE_INSTALL_PREFIX:PATH = /用户/你/ VTK / VTKBuild

    BUILD_SHARED_LIBS:BOOL = OFF

    CMAKE_BUILD_TYPE:STRING =调试

    VTK_USE_SYSTEM_ZLIB:BOOL = ON

    CMAKE_OSX_ARCHITECTURES:STRING = I386; x86_64的

    CMAKE_OSX_SYSROOT:STRING = /应用/ XCode.app /内容/开发商/平台/ MacOSX.platform /开发商/软件开发工具包/ MacOSX10.8.sdk

  5. 编译VTK项目(这可能需要一个多小时才能运行!):

      

  6. 将标题复制到包含目录:

      

    make install

  7. VTK现在应该完全安装在VTKBuild目录中,并且可以在XCode项目中使用了!

  8. 转到您的Finder,导航到Users / you / VTK / Examples / GUI / Cocoa /并双击打开XCode中的SimpleCocoaVTK.xcodeproj。

  9. 在XCode菜单栏中(位于屏幕顶部)转到偏好设置 - >地点 - >源树,然后使用+按钮添加两个源树:

    vtk-debug-include vtk-debug-include Users / you / VTK / VTKBuild / include / vtk-6.1

    vtk-debug-lib vtk-debug-lib Users / you / VTK / VTKBuild / lib

  10. 单击XCode项目并删除对vtk 6.0的所有引用:

    • 在项目视图中,选择Targets-> SimpleCocoaVTK,然后按“Build Phases”,然后打开“Link Binary With Libraries”。删除所有以“libvtk”开头并以“6.0.a”结尾的文件

    • 在SimpleCocoaVTK项目的文件视图中,高亮显示并删除vtk-libraries文件夹中的所有文件。

  11. 确保XCode文件视图处于活动状态。然后在finder中,导航到/ Users / you / VTK / VTKBuild / lib,并选择所有以“libvtk”开头并以“6.1.a”结尾的文件。将这些文件拖到XCode文件视图中的“vtk-libraries”文件夹中。

  12. 在XCode中,执行产品 - >清除

  13. 您现在可以构建并运行示例SimpleCocoaVTK项目。

答案 1 :(得分:1)

我还必须设置

VTK_WRAP_PYTHON:BOOL = ON

CMakeCache.txt中的

答案 2 :(得分:1)

这取决于您的计算机上的用户以及与该用户相关的权限。我在CMakeCache.txt文件上找到并替换了所有/ usr / local引用改为/ Users / myusername / Develop / VTKInstall。这样,一切都在你的指尖,你不必改变对事物的权限。

当您打开Cocoa示例时,请确保在您的偏好设置中设置这些路径(例如,Preferences-> Locations-> Source Trees)。此外,您还需要将vtk-library重新导入到项目中。

我用XCode 6.1.1运行Yosemite。我希望这有助于某人!

答案 3 :(得分:0)

如果您在尝试构建VTK时收到类似这样的错误消息:

  

@error:不再支持垃圾回收

     

make [2]:*** Rendering / OpenGL / CMakeFiles / vtkRenderingOpenGL.dir / vtkCocoaRenderWindowInteractor.mm.o]错误1

     

make 1:*** [[Rendering / OpenGL / CMakeFiles / vtkRenderingOpenGL.dir / all]错误2

您需要删除源CMakeLists.txt中的标志:

@IF(APPLE)
 SET(VTK_OBJCXX_FLAGS_DEFAULT "-fobjc-gc")
 SET(VTK_REQUIRED_OBJCXX_FLAGS ${VTK_OBJCXX_FLAGS_DEFAULT} CACHE STRING "Extra flags for Objective-C++ compilation")
MARK_AS_ADVANCED(VTK_REQUIRED_OBJCXX_FLAGS)
ENDIF(APPLE)@

要么取消注释要么全部删除。然后在空的构建目录中再次运行cmake。检查生成目录中生成的CMakeCache.txt,如果它包含VTK_REQUIRED_OBJCXX_FLAGS之类的密钥,则不应该再尝试在空构建目录中运行cmake

这个'bug'可能在将来的VTK版本中修复。

来源:[Solved] Build Qt 5.2.1 + VTK 6.1.0 + CMake 2.8.12.2

相关问题