EdkFatBinPkg - Binary DXE drivers for the Fat 32 file system\r
EdkShellBinPkg - Binary Shell applications and commands\r
EdkNt32Pkg - NT32 Emulation platform reference\r
+ EdkUnixPkg - Posix/Unix Emulation platform reference (Currently this\r
+ builds only on ia32 Linux, but is meant to be portable.)\r
\r
Note: MDE and MDK that appear in other documentation refer to the MdePkg and\r
Tools packages, respectively. While, these two packages are the minimum \r
compile the custom gcc tool chain, you need the following tools on your host\r
computer: bash, gcc, gmake, curl (or wget).\r
\r
-Only the MdePkg and EdkModulePkg are currently supported by gcc builds. Other\r
-builds, such as the EdkNt32Pkg, will not compile with gcc. By default, the edk2\r
-will try to build the NT32.fpd, which is not supported by gcc. So, you need to\r
-change the Tools/Conf/target.txt.\r
+Only the MdePkg, EdkModulePkg and EdkUnixPkg are currently supported by gcc\r
+builds. Other builds, such as the EdkNt32Pkg, will not compile with gcc. By\r
+default, the edk2 will try to build the NT32.fpd, which is not supported by\r
+gcc. So, you need to change the Tools/Conf/target.txt.\r
\r
The cross-compile build script has been tested on Cygwin, OS X and Linux. You\r
should expect to hack on these scripts to make them work on your system. You\r
PE32+ image. The EFIAPI calling convention is very similar to the Microsoft x64 \r
calling convention.\r
\r
+We have added prelinary support for the MinGW64 Tool chain. This gcc tool\r
+chain is ported to follow the Microsft X64 ABI, and therefore is compatible\r
+with the EFI specification.\r
+\r
On Itanium?Processors the gcc compiler does not support generating a PE32+ image.\r
\r
+----------------------------------------\r
+A Word on EdkUnixPkg -- The Unix simulator\r
+----------------------------------------\r
+\r
+A unix port of the Nt32 simulator has been added to the project. It currently\r
+builds and runs on 32 bit Linux, but should be portable to other Unix\r
+variants. In order to build it, you should use the ELFGCC tool chain defintion\r
+in tools_def.txt, which is set in target.txt. These are two settings to make\r
+in Tools/Conf/target.txt:\r
+\r
+ACTIVE_PLATFORM = EdkUnixPkg/Unix.fpd\r
+TOOL_CHAIN_TAG = ELFGCC\r
+\r
+Once that is setup, type build, and then you will end up with the simulator in\r
+Build/Unix/DEBUG_ELFGCC/IA32/SecMain.exe. \r
+\r
+In order to use the gdb debugger with the simulator, you may need to load the\r
+correct symbol file for the various modules that are loaded. For example,\r
+\r
+add-symbol-file EdkModulePkg/Bus/Pci/PciBus/Dxe/PciBus/DEBUG/./PciBus.dll\r
+0x45dc6000\r
+\r
+You can see the names of the symbol files (they are in ELF format even though\r
+the extension is .dll) printed on the screen as the simulator comes up.\r
+\r
-----------------------\r
Notes on Documentation\r
-----------------------\r
Virus scanned by McAfee VirusScan Enterprise 8.0.0, Virus Definitions 4890, no\r
virus detected.\r
\r
-vim:tw=78:ts=2:fo=qa:com=fb\:- :ai\r
+vim:tw=78:ts=2:com=fb\:- :ai\r