我是vala / clutter开发的新手,并尝试设置Nemiver来调试我的vala / clutter程序。我正在使用monodevelop来编辑和构建来自vala网页的clutter-demo示例。我正在通过编译器--pkg clutter-1.0 -g --save-temps选项。我安装了clutter-debuginfo软件包(我在Fedora 16上)。该程序在monodevelop内运行良好。
当从Nemiver运行可执行文件时,我可以在下面的代码中查看某些局部变量,例如整数循环计数器,但是我看不到杂乱对象属性的值,例如r.width值。虽然“r”在上下文选项卡中列为clutterRectangle的类型指针,但它旁边没有+符号可以展开并查看width属性。同样,当我在代码中突出显示r.width并右键单击并选择inspect变量时,我没有得到任何信息。
原谅我的无知,但有人知道我必须做些什么来使这项工作?
任何信息都表示赞赏
日Thnx
private void create_rectangles () {
for (int i = 0; i < colors.length; i++) { // Nemiver shows the value of int i correctly
var r = new Rectangle ();
r.width = r.height = stage.height / colors.length; // can't get a value for r.width
r.color = Color.from_string (colors[i]);
r.anchor_gravity = Gravity.CENTER; // *********** My Break Point is set here in Nemiver
r.y = i * r.height + r.height / 2;
stage.add_actor (r);
rectangles[i] = r;
}
}
答案 0 :(得分:2)
GDB不适用于vala语法。必须使用C查询。可能宽度和高度都是属性,因此您必须执行以下操作:
clutter_actor_get_width(R);
同样出于调试目的,最好传递-X -O0以便gcc关闭优化。