【发布时间】:2015-10-22 22:39:56
【问题描述】:
TL;RD 在 Xcode 的 http://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Mac 之后,哪些步骤可以让您添加断点/监视并在 OS X 上正确调试可执行文件?
我的规格
Xcode Version 6.4 (6E35b)
OSX 10.10.4 (14E46)
CMake 3.3.0 GUI build with QT 4.8.6
详细说明
我确实按照说明进行了设置,因此我按照 Xcode 5 的建议设置了方案(确实让调试作为默认设置)但是
- 第一次 cmake 失败是因为没有
numpy内部没有numpy(发布或调试)https://svn.blender.org/svnroot/bf-blender/trunk/lib/darwin-9.x.universal/python/lib/python3.4/ 也从控制台输出中搜索 munpy 类似/Users/tyoc213/blender-build/blender/../lib/darwin-9.x.universal/python/lib/python3.4/python3.4/site-packages/numpy的东西你也可以看到它搜索在python3.4/python3.4上,这很奇怪。 - 在第二次运行时,它说它将在安装时跳过
numpy。你可以在这里看到cmake的输出https://gist.github.com/tyoc213/aea0fb541383dc06981a - 所以我们现在可以生成 Xcode 项目,我们使用 Xcode 打开生成的搅拌机项目,将方案配置为在 dev-wiki 上并等待它在闪避步骤失败。
调试方案唯一合理的修复是根本没有修复,使用发布方案
对此只有一个“修复”用于编译和运行,将方案更改为发布,但即使检查了Debug application并且Xcode附加在启动进程,断点不起作用。
调试方案
所以调试方案中的问题是这样的:How to build a blender build in Xcode 5? 基本上没有找到来自 libbf_intern_cycles.a 的引用:_Controller_actuators_length,_CurveMapping_curves_length,_MeshColorLayer_data_length,_MeshLoopColorLayer_data_length,_MeshPaintMaskLayer_data_length,@987654338 @,_MeshPolygonIntPropertyLayer_data_length,_MeshPolygonStringPropertyLayer_data_length,_MeshSkinVertexLayer_data_length,_MeshTextureFaceLayer_data_length,_MeshTexturePolyLayer_data_length,_MeshUVLoopLayer_data_length,_MeshVertexFloatPropertyLayer_data_length,_MeshVertexIntPropertyLayer_data_length,_MeshVertexStringPropertyLayer_data_length,_Sensor_controllers_length,_MeshPolygonStringPropertyLayer_data_length这是_Spline_points_length9876
关于调试的正确设置和放置断点的任何建议,然后使用Xcode和观察变量步骤、线程 /strong> 等等?
【问题讨论】:
-
我不知道 XCode,但是 Blender 与其他 CMake 项目没有什么不同。只需将
CMAKE_BUILD_TYPE设置为Debug,重建。您应该会看到调试符号。 -
请注意,
numpy问题是警告,而不是错误。 -
这似乎与stackoverflow.com/questions/31178003/… 重复,两者都是调试版本的链接错误。
-
认为它是重复的,人们可能认为它已解决,因为 OP 说“为了得到它,我让它工作了”......虽然他没有看到有一个正确的调试方案的用处您可以在其中放置可视断点、添加监视、查看堆栈和断点命中时的局部变量等等。这就是为什么用更具体的标题再次询问的原因。
标签: python xcode debugging xcode6 blender