I am debugging an ARM binary using IDA Pro by connecting to QEMU (remote gdb debugging).
In gdb configuration, I am selecting
ARM_versatilepb as the device.
Now, I am able to successfully debug the ARM binary. However, I am unable to execute the syscalls like
socket() and so on in the binary.
I think the reason for this is that I am using a bare metal config of QEMU. So, how do I modify this configuration to have a full Linux system running on QEMU so that I can execute syscalls as well?
There is another device name, ARM_Linux in the
gdb_arch.cfg file of IDA Pro which has the
arm_root.img parameter passed in the command line.
I selected this device but even then, unable to execute the syscalls.
The bare metal configuration I am using at present is detailed here.