语境:
我在 OSX10.10 上运行搅拌机时遇到了问题(不幸的是,这是早期发布的软件,如果可能的话,我真的应该尝试使用它)。
具体来说:
异常类型:EXC_CRASH (SIGSEGV) 异常代码:0x0000000000000000, 0x0000000000000000
线程 0:: 调度队列:com.apple.main-thread
0 com.apple.CoreFoundation 0x97dc34ed CFStringGetCString + 29
1 org.blenderfoundation.blender 0x00338953 fsmenu_read_system + 851
2 org.blenderfoundation.blender 0x0033a398 ED_file_init + 72
3 org.blenderfoundation.blender 0x00011df5 WM_init + 133
4 org.blenderfoundation.blender 0x00002cd4 主 + 660
5 org.blenderfoundation.blender 0x00002a35 开始 + 53
由于这个错误看起来并不可怕(诚然,它可能隐藏了 100 个其他错误......)我决定尝试构建 Blender。
问题
使用 CMake 获得正确的配置证明是艰巨的。我不断得到类似的东西:
检测到的系统版本:不支持 Xcode-bundle:/Applications/Xcode.app 检测到的 Xcode-version:5.1.1 OSX_SYSROOT_PREFIX:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform 在 /Applications 执行测试 SUPPORT_SSE_BUILD CMake 警告/CMake 2.8-12.app/Contents/share/cmake-2.8/Modules/Platform/Darwin.cmake:179(消息):忽略CMAKE_OSX_SYSROOT值:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSXunsupported.sdk
因为目录不存在。调用堆栈(最近调用优先):/Applications/CMake 2.8-12.app/Contents/share/cmake-2.8/Modules/CMakeSystemSpecificInformation.cmake:36(包括)CMakeLists.txt:3(项目)
/Applications/CMake 2.8-12.app/Contents/share/cmake-2.8/Modules/Platform/Darwin.cmake:211 处的 CMake 错误(消息):CMAKE_OSX_DEPLOYMENT_TARGET 为“10.6”,但 CMAKE_OSX_SYSROOT:
“”
未设置为具有可识别版本的 MacOSX SDK。将 CMAKE_OSX_SYSROOT 设置为有效的 SDK 或将 CMAKE_OSX_DEPLOYMENT_TARGET 设置为空。调用堆栈(最近调用优先):/Applications/CMake 2.8-12.app/Contents/share/cmake-2.8/Modules/CMakeSystemSpecificInformation.cmake:36(包括)CMakeLists.txt:3(项目)
CMake 错误:内部 CMake 错误,cmake 的 TryCompile 配置失败 配置不完整,发生错误!另请参阅“/Users/xxx/blender-build/cmake/CMakeFiles/CMakeOutput.log”。
虽然这似乎是不言自明的,但问题是我在按下配置/生成之前手动将 CMAKE_OSX_SYSROOT 设置为有效的(至少是现有的)SDK,它每次都会替换我通过 MacOSXunsupported.sdk 选择的任何内容......
我不熟悉 CMake。我使用 GUI 界面,但任何可以指向正确方向的解释都会有所帮助。
我尝试同时指向 XCode5 和 6,尽管查看匹配的输出,CMake 似乎打算使用位于“应用程序/XCode”中的 XCode 版本(该 gui 似乎没有提供选择特定版本的选项的 XCode )
作为参考,我使用了此处提供的说明:
http://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Mac
感谢帮助。