1

我目前正在使用从 gem5 ( http://www.m5sim.org/Download ) 的文档页面下载的 linux-x86.img,但是由于我无法在此图像上编译 fscanf 和 fopen 命令,所以我想知道是否有更新的图像可以下载和使用。

尝试使用 fopen 和 fscanf 编译行时抛出的错误消息是

./obj/edgelist.o: 在函数loadEdgeArray': edgelist.c:(.text+0x148): undefined reference to __isoc99_fscanf' ./obj/edgelist.o: 在函数loadEdgeArrayInfo': edgelist.c:(.text+0x20c): undefined reference to __isoc99_fscanf' collect2: ld 返回 1 退出状态 make: *** [test] 错误 1

尝试从 qemu 和 gem5 编译时会引发此错误。

4

2 回答 2

0

我不确定为什么该错误不再发生在我身上,但记录了我所经历的步骤,这些步骤可能已经解决了一些问题。我重新安装了 Ubuntu18.04,因此不得不重建 gem5,并且我使用了这个答案中引用的解析图像( http://www.cs.utexas.edu/~parsec_m5/x86root-parsec.img.bz2 ) Booting gem5 X86 Ubuntu Full System模拟

于 2020-04-05T21:09:32.263 回答
0

这是使用 Buildroot 生成此类图像的一种设置。我是 Buildroot 的粉丝,因为它从源代码构建一切。我不明白该图像如何fscanf以及fopen可能会失败,但我已经在上述设置中测试了它们并且它们工作正常

引导过去可以正常工作,但 gem5 X86 完整系统引导已被破坏,截至 2020 年 3 月,gem5 方面的几个月内可能很容易修复原因,尽管已经努力修复它,而且很可能它很快就会再次工作:https ://www.gem5.org/project/2020/03/09/boot-tests.html

其他替代方案包括:

还值得注意的是,当 gem5.org 网站在 2020 年第一季度从旧 Wiki 迁移到新的静态网站设置时,我们失去了在http://dist.gem5.org/dist/current/下进行目录列表的能力arm/出于某种原因,因此开发人员被迫在静态网站上一一列出... https://www.gem5.org/documentation/general_docs/fullsystem/guest_binaries

于 2020-03-31T06:06:06.270 回答