在http://www.vtk.org/Wiki/Cocoa_VTK发布的极其有用的指导原则以及由VTK回购中的Sean McBride和Mike Jackson发布的自述文件对于VTK 6.1略有过时。所以如果这有助于任何人,我发布了在OSX 10.8上安装VTK 6.1的说明,并支持SimpleCocoaVTK Xcode项目。
答案 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。
将VTK git repo克隆到您选择的目录中:
cd / Users / you /
git clone https://github.com/Kitware/VTK.git
cd VTK
git checkout tags / v6.1.0
制作构建目录
mkdir VTKBuild
cd VTKBuild
运行VTK cmake脚本
cmake ..
在新生成的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
编译VTK项目(这可能需要一个多小时才能运行!):
请
将标题复制到包含目录:
make install
VTK现在应该完全安装在VTKBuild目录中,并且可以在XCode项目中使用了!
转到您的Finder,导航到Users / you / VTK / Examples / GUI / Cocoa /并双击打开XCode中的SimpleCocoaVTK.xcodeproj。
在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
单击XCode项目并删除对vtk 6.0的所有引用:
在项目视图中,选择Targets-> SimpleCocoaVTK,然后按“Build Phases”,然后打开“Link Binary With Libraries”。删除所有以“libvtk”开头并以“6.0.a”结尾的文件
在SimpleCocoaVTK项目的文件视图中,高亮显示并删除vtk-libraries文件夹中的所有文件。
确保XCode文件视图处于活动状态。然后在finder中,导航到/ Users / you / VTK / VTKBuild / lib,并选择所有以“libvtk”开头并以“6.1.a”结尾的文件。将这些文件拖到XCode文件视图中的“vtk-libraries”文件夹中。
在XCode中,执行产品 - >清除
您现在可以构建并运行示例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版本中修复。