I am having the following error in gem5. This happens in ARM only. With X86 I see some syscalls being ignored but none causing a fatal error.
tomas@ubuntu:~/gem5$ ./build/ARM/gem5.opt configs/example/arm/starter_se.py ../tests_gem5/hello
gem5 Simulator System. http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.
gem5 compiled Jul 9 2018 17:09:01
gem5 started Jul 9 2018 18:07:37
gem5 executing on ubuntu, pid 5064
command line: ./build/ARM/gem5.opt configs/example/arm/starter_se.py ../tests_gem5/hello
info: 1. command and arguments: ['../tests_gem5/hello']
Global frequency set at 1000000000000 ticks per second
warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (1024 Mbytes)
warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (1024 Mbytes)
0: system.remote_gdb: listening for remote gdb on port 7000
info: Entering event queue @ 0. Starting simulation...
fatal: syscall openat (#322) unimplemented.
Memory Usage: 2246296 KBytes
I found this answer in gem5's FAQ. But now it shows this error:
warn: ignoring syscall openat(...)
FATAL: kernel too old
warn: ignoring syscall rt_sigprocmask(...)
(further warnings will be suppressed)
fatal: syscall gettid (#224) unimplemented.
I am compiling in Ubuntu 18.04 using this:
arm-linux-gnueabi-gcc hello.c -o hello -static -DUNIX
Has anyone found a way to compile a simple hello world, targeting ARM, that doesn't use syscalls not supported by gem5? There are pre-compiled examples so there must be a way.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…