我在 Ubuntu 20.04 LTS 中编译了一个 helloworld 程序,我想在 Simics 中调试它,我在 上设置了一个断点main
,但 Simics 不会中断。
我尝试在 QSP-x86 中编译它,该二进制文件可以工作。
据我了解,main
无论二进制文件的原始构建环境是什么,Simics 都可以中断。我不知道为什么它在我的情况下没有破裂。
这是我的步骤:
第 1 步:在 Ubuntu 20.04 中编译 helloworld
$ cat a.c
#include <stdio.h>
int main()
{
printf("Hello world!\n");
return 0;
}
$ gcc -g a.c
步骤 2:复制a.out
到 Simics 项目根目录并上传到 QSP-x86 (firststeps.simics)
第 3 步:
simics> enable-debugger
simics> add-symbol-file a.out
simics> bp.source_location.break main
simics> run
running>
第 4 步:a.out
从模拟的串行控制台运行
预期:main
应该触发
断点但得到:根本没有触发断点