QeMU breaking after GCC upgrade

1

I've been developing for PowerPC systems for a while now and until recently have been relying on GCC 6.3, without problems.

Currently, due to different reasons, I had to switch from GCC 6.3 to GCC 8.2

Now, my system is working just fine for the development board (MPC5777) but when I use QeMU it no longer works. I have tried with QeMU 2.8, 2.12 and 3.1, with the same result. so the problem is not with QeMu (I think).

QEMU 2.8.50 monitor - type 'help' for more information
(qemu) rom: requested regions overlap (rom Executables/Partition2.elf. free=0x000000000049659c, addr=0x0000000000128000)
C:\Program Files\qemu\qemu-system-ppc.exe: rom check and register reset failed
make[1]: *** [makefileQeMU:89: run] Error 1

I have looked around for a solution, but haven't found anything significant. I have read some things talking about the linker script being the issue, but it does not seem to be right, as the addresses should be the same and the only thing I have changed is the compiler version.

Felipe GM

Posted 2019-01-04T16:26:31.690

Reputation: 11

Answers

0

I was able to find a (somehow) solution to this. When compiling, I am using -g3 flag for debugging purposes. using it with GCC 6.3 didn't seem to increase my file (.elf) size that much. Now, with 8.2 the size difference was HUGE, leading to the memory overlap. As I was not taking into account that this could happen, when loading the elf files into QeMU, I was not reserving enough memory space. I will investigate deeper the reason for so much difference on the debugging information created and update this post, but if someone with the same problem ends up here, please do consider this kind of situation.

Felipe GM

Posted 2019-01-04T16:26:31.690

Reputation: 11