Please bear in mind that simply symlinking/copying /usr/riscv64-linux-gnu/include/gnu/stubs-lp64d.h as /usr/riscv64-linux-gnu/include/gnu/stubs-lp64.h does solve the compilation issues.
Right now, and for the past couple of years, people compiling EDK2 projects for RISC-V on Ubuntu (which includes anybody using GitHub Actions) will face an error unless they manually duplicate/symlink stubs-lp64d.h as stubs-lp64.h (See for instance the extra step needed in https://github.com/pbatard/EfiFs/blob/d77c3ab5f4ad990d5a685f9f11c6d5fac54b5ed1/.github/workflows/linux_gcc_edk2.yml#L64-L66), so I believe that the header should be added to the package installation regardless, especially as all it seems to do is provide empty stub definitions...
Please bear in mind that simply symlinking/copying /usr/riscv64- linux-gnu/ include/ gnu/stubs- lp64d.h as /usr/riscv64- linux-gnu/ include/ gnu/stubs- lp64.h does solve the compilation issues.
Right now, and for the past couple of years, people compiling EDK2 projects for RISC-V on Ubuntu (which includes anybody using GitHub Actions) will face an error unless they manually duplicate/symlink stubs-lp64d.h as stubs-lp64.h (See for instance the extra step needed in https:/ /github. com/pbatard/ EfiFs/blob/ d77c3ab5f4ad990 d5a685f9f11c6d5 fac54b5ed1/ .github/ workflows/ linux_gcc_ edk2.yml# L64-L66), so I believe that the header should be added to the package installation regardless, especially as all it seems to do is provide empty stub definitions...