Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
readme.txt | 2014-11-29 | 2.5 kB | |
stdarg-X64-Os_11-28-2014.patch | 2014-11-29 | 4.8 kB | |
readme_11-02-2014.txt | 2014-11-26 | 2.3 kB | |
edk2-gcc-lto_11-26-2014.patch | 2014-11-26 | 50.5 kB | |
edk2-gcc-lto_11-06-2014.patch | 2014-11-07 | 27.1 kB | |
Totals: 5 Items | 87.1 kB | 0 |
Here is an example of using edk2-gcc-lto_11-26-2014.patch to build from Windows: 1) Download EDK2 (rev 16449) and then apply this patch. 2) Download the 11-04-2014 gcc 4.9.2 lto binaries from: http://sourceforge.net/projects/edk2developertoolsforwindows/files/Tool%20Chain%20Binaries/ 3) If your project needs nasm.exe, download it to a directory named nasm211. If your project needs iasl.exe, download it to a directory named ASL. Put these items in a directory like this: +---edk2 \---tools +---ASL +---gcc492lto-aarch64 +---gcc492lto-arm +---gcc492lto-x86 +---nasm211 5) Start a cmd.exe prompt and CD to the directory containing edk2 and tools. Clean any non-svn files from edk2/Conf. Paste in these commands: set UEFI_BUILD_TOOLS=%cd%\tools set NASM_PREFIX=%UEFI_BUILD_TOOLS%\nasm211\ set IASL_PREFIX=%UEFI_BUILD_TOOLS%\ASL\ set GCC49_BIN=%UEFI_BUILD_TOOLS%\gcc492lto-x86\bin\ set GCC49_DLL=%UEFI_BUILD_TOOLS%\gcc492lto-x86\dll\;%GCC49_BIN% set GCC49_AARCH64_PREFIX=%UEFI_BUILD_TOOLS%\gcc492lto-aarch64\bin\ set GCC49_ARM_PREFIX=%UEFI_BUILD_TOOLS%\gcc492lto-arm\bin\ set GCC49_X64_EXTRA_CC_FLAGS=-Wno-error set GCC49_IA32_EXTRA_CC_FLAGS=-Wno-error set GCC49_AARCH64_EXTRA_CC_FLAGS=-Wno-error set GCC49_ARM_EXTRA_CC_FLAGS=-Wno-error cd edk2 call Edk2Setup.bat build.exe -p ShellPkg\ShellPkg.dsc -b RELEASE -t GCC49 -n 8 -a IA32 build.exe -p ShellPkg\ShellPkg.dsc -b RELEASE -t GCC49 -n 8 -a X64 build.exe -p ShellPkg\ShellPkg.dsc -b RELEASE -t GCC49 -n 8 -a AARCH64 build.exe -p ShellPkg\ShellPkg.dsc -b RELEASE -t GCC49 -n 8 -a ARM The result should be a successful build of all 4 shell projects. Tested with EDK2 SVN rev 16449 (11/26/2014). Now try a boot test using Duet and AMD simnow: http://notabs.org/uefi/Edk2DuetBoot.htm You will find Duet IA32 built using edk2-gcc-lto_11-26-2014.patch works properly. But the X64 build has problems. It may crash during boot, or lack video output otherwise. The reason is the -Os the patch adds to the X64 build exposes a limitation with the VA_LIST setup. To solve that problem, apply patch stdarg-X64-Os_11-28-2014.patch. With this, the Duet X64 build might pass the boot test. If it does not, you will have to apply duet-print-fix.patch. Duet-print-fix.patch should be committed to SVN soon and this step will no longer be needed.