我对 UEFI 开发相对较新,我正在探索各种选项以使 UEFI 开发类似于普通的 C/C++ 编程,或者至少更接近它。
我发现了一些很棒的人所做的出色工作。
Visual UEFI:https ://github.com/ionescu007/VisualUefi (使基于 UEFI EDK2 的开发变得有趣)
gnu-efi:https
://sourceforge.net/projects/gnu-efi/
Toro-C:https://github。 com/KilianKegel/toro-C-Library (标准 C 库移植)
EDK2-LibC:https ://github.com/tianocore/edk2-libc (EDK2 中的标准 C 库支持)
我能够使用 EDK2-LibC 使用 main() 和 printf() 构建简单的程序,
包括 efi shell 应用程序中的 edk2-libc
ToroC 也提供了类似的功能,尽管它可能没有 EDK2-LibC 那样广泛的支持。但是,当我直接引导到这些标准库支持的程序时(例如通过更改引导选项和引导顺序引导到 Hello.efi),这些标准库支持的程序不起作用,因此我知道它需要 EFI Shell 支持。如果我错了,请纠正我。
有什么方法可以引导到使用 EDK2-LibC 或 Toro-C 编译的 EFI 应用程序?