Re: On integrating LoongArch EDK2 firmware into QEMU build process


maobibo
 

Cc to Chao Li who is maintainer of edk2 about LoongArch support.

Hi Chao,

Fedora38 is used to build edk2 binary in qemu CI, cross gcc-12 is
integrated on Fedora38. There is one issue when gcc-12 is used to
build edk2 loongarch like this:
... but when trying to use them to compile the loongarch firmware gcc
throws errors:

loongarch64-linux-gnu-gcc: error: unrecognized command-line option ‘-mno-explicit-reloc
what is your option about this issue?

Regards
Bibo, Mao

在 2023/4/1 13:11, maobibo 写道:


On 2023/3/31 20:12, Gerd Hoffmann wrote:
On Fri, Mar 31, 2023 at 08:54:16AM +0800, maobibo wrote:
Xuerui,

Thanks for your mail, it is a good suggestion. Now we are planing to
move LoongArch uefi bios from edk2-platform to edk2 repo, so that uefi
bios supporting LoongArch can be auto compiled and uploaded to qemu
repo. Only that process is somwhat slow since lacking of hands,
however we are doing this.
Good, so I think it makes sense for qemu to just wait for that to
happen.

Related question:  What are the requirements to build the firmware?
Fedora 38 ships cross compiler packages ...

   binutils-loongarch64-linux-gnu-2.39-3.fc38.x86_64
   gcc-loongarch64-linux-gnu-12.2.1-5.fc38.x86_64

... but when trying to use them to compile the loongarch firmware gcc
throws errors:

loongarch64-linux-gnu-gcc: error: unrecognized command-line option ‘-mno-explicit-relocs’

I suspect gcc-12 is just too old?
There is a little different about relocation between gcc-12 and gcc-13 on LoongArch, gcc-13 is required for edk2 compiler now.

However I think it is actually is one issue if gcc-12 can not be used and gcc-12 is popular latest compiler for all architectures. We will solve this problem.

Regards
Bibo, Mao



take care,
   Gerd

Join devel@edk2.groups.io to automatically receive all group messages.