<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
	<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252">
	<TITLE>EDK II Installation Guide</TITLE>
	<META NAME="GENERATOR" CONTENT="OpenOffice.org 2.0  (Win32)">
	<META NAME="CREATED" CONTENT="20060512;12074440">
	<META NAME="CHANGEDBY" CONTENT="Bruce Bahnsen">
	<META NAME="CHANGED" CONTENT="20060706;14380303">
	<STYLE>
	<!--
		H3.heading-2 { font-size: 18pt }
	-->
	</STYLE>
</HEAD>
<BODY LANG="en-US" DIR="LTR">
<H1>Getting and installing the required tools for building the EDK II</H1>
<H3 CLASS="heading-2">Table of Contents</H3>
<UL>
	<LI><P><A HREF="#Requirements">Requirements</A> 
	</P>
</UL>
<H3 CLASS="heading-2"><A NAME="Requirements"></A>Requirements</H3>
<P>The following are required to be able to build the EDK: 
</P>
<DIV ID="requirements" DIR="LTR"><A NAME="requirements_table"></A>
	<TABLE BORDER=1 CELLPADDING=0 CELLSPACING=0>
		<TR>
			<TH>
				<P STYLE="border: none; padding: 0in"><FONT COLOR="#ffffff">Name</FONT></P>
			</TH>
			<TH>
				<P STYLE="border: none; padding: 0in"><FONT COLOR="#ffffff">Version</FONT></P>
			</TH>
			<TH>
				<P STYLE="border: none; padding: 0in"><FONT COLOR="#ffffff">URL</FONT></P>
			</TH>
		</TR>
		<TR>
			<TD>
				<P ALIGN=CENTER><B>TortoiseSVN</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><B>1.3.3</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><A HREF="http://prdownloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.3.3.6219-svn-1.3.1.msi?download">http://prdownloads.sourceforge.net/tortoisesvn/</A><BR><A HREF="http://prdownloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.3.3.6219-svn-1.3.1.msi?download">TortoiseSVN-1.3.3.6219-svn-1.3.1.msi?download</A></P>
			</TD>
		</TR>
		<TR>
			<TD>
				<P ALIGN=CENTER><B>Ant</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><B>1.6.5</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><A HREF="http://ant.apache.org/bindownload.cgi">http://ant.apache.org/bindownload.cgi</A></P>
			</TD>
		</TR>
		<TR>
			<TD>
				<P ALIGN=CENTER><B>Ant Contrib</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><B>1.0b2</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><A HREF="http://prdownloads.sourceforge.net/ant-contrib/ant-contrib-1.0b2-bin.zip?download">http://prdownloads.sourceforge.net/ant-contrib/ant-contrib-1.0b2-bin.zip?download</A></P>
			</TD>
		</TR>
		<TR>
			<TD>
				<P ALIGN=CENTER><B>Java JDK</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><B>1.5.x</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><A HREF="http://java.sun.com/j2se/1.5.0/download.jsp">http://java.sun.com/j2se/1.5.0/download.jsp</A></P>
			</TD>
		</TR>
		<TR>
			<TD>
				<P ALIGN=CENTER><B>Saxon-B</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><B>8.1.1 for Java</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><A HREF="http://prdownloads.sourceforge.net/saxon/saxonb8-1-1.zip">http://prdownloads.sourceforge.net/saxon/saxonb8-1-1.zip</A></P>
			</TD>
		</TR>
		<TR>
			<TD>
				<P ALIGN=CENTER><B>XMLBeans</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><B>2.1.0</B></P>
			</TD>
			<TD>
				<P ALIGN=CENTER><A HREF="http://www.apache.org/dyn/closer.cgi/xmlbeans/binaries">http://www.apache.org/dyn/closer.cgi/xmlbeans/binaries</A></P>
			</TD>
		</TR>
	</TABLE>
	<P><BR><BR>
	</P>
	<P>The following tools are optional:</P>
	<DIV ID="Section1" DIR="LTR"><A NAME="requirements"></A><A NAME="requirements_table1"></A>
		<TABLE BORDER=1 CELLPADDING=0 CELLSPACING=0>
			<TR>
				<TH>
					<P STYLE="border: none; padding: 0in"><FONT COLOR="#ffffff">Name</FONT></P>
				</TH>
				<TH>
					<P STYLE="border: none; padding: 0in"><FONT COLOR="#ffffff">Version</FONT></P>
				</TH>
				<TH>
					<P STYLE="border: none; padding: 0in"><FONT COLOR="#ffffff">URL</FONT></P>
				</TH>
			</TR>
			<TR>
				<TD>
					<P ALIGN=CENTER><B>Cygwin</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><B>Current</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><A HREF="http://www.cygwin.com/">http://www.cygwin.com</A></P>
				</TD>
			</TR>
			<TR>
				<TD>
					<P ALIGN=CENTER><B>Intel C++ Compiler for Windows</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><B>9.0 </B>
					</P>
				</TD>
				<TD>
					<P ALIGN=CENTER><A HREF="http://www.intel.com/">http://www.intel.com</A></P>
				</TD>
			</TR>
			<TR>
				<TD>
					<P ALIGN=CENTER><B>Intel C Compiler for EFI Byte Code</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><B>1.2</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><A HREF="http://www.intel.com/cd/software/products/asmo-na/eng/compilers/efibc/index.htm">http://www.intel.com/cd/software/products</A><BR><A HREF="http://www.intel.com/cd/software/products/asmo-na/eng/compilers/efibc/index.htm">/asmo-na/eng/compilers/efibc/index.htm</A></P>
				</TD>
			</TR>
			<TR>
				<TD>
					<P ALIGN=CENTER><B>Microsoft Driver Development Kit</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><B>3790.1830</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><A HREF="http://www.microsoft.com/whdc/devtools/ddk/orderddkcd.mspx">http://www.microsoft.com/whdc/devtools/ddk/orderddkcd.mspx</A></P>
				</TD>
			</TR>
			<TR>
				<TD>
					<P ALIGN=CENTER><B>Microsoft ACPI Source Language Assembler</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><B>1.0.13NT</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><A HREF="http://download.microsoft.com/download/0/e/2/0e258da3-dd7a-4d3b-9b48-8673b6b5897c/ASL.exe">http://download.microsoft.com/download/0/e/2/0e2</A><BR><A HREF="http://download.microsoft.com/download/0/e/2/0e258da3-dd7a-4d3b-9b48-8673b6b5897c/ASL.exe">58da3-dd7a-4d3b-9b48-8673b6b5897c/ASL.exe</A></P>
				</TD>
			</TR>
			<TR>
				<TD>
					<P ALIGN=CENTER><B>Intel ACPI Component Architecture</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><B>20060113</B></P>
				</TD>
				<TD>
					<P ALIGN=CENTER><A HREF="http://www.intel.com/technology/iapc/acpi/downloads.htm">http://www.intel.com/technology/iapc/acpi/downloads.htm</A></P>
				</TD>
			</TR>
		</TABLE>
		<H3 CLASS="heading-2">Install and Configure Tools on Windows XP</H3>
		<H3>Software Installation Order</H3>
		<P>After installing the compiler tools and your Subversion client,
		the following required tools should be installed in this order:
		<BR>Java JDK, Apache-Ant, ant-contrib, xmlbeans, saxon8</P>
		<H3>Java Development Kit</H3>
		<P>The Java Environment Variable must be set before attempting to
		build.<BR>e.g. For Sun JDK:</P>
		<PRE STYLE="margin-bottom: 0.2in">set JAVA_HOME=c:\Java\jdk1.5.0_06</PRE><P>
		During installation, you should specify the install directory as
		C:\Java instead of C:\Program Files (or some other drive letter.)&nbsp;
		While installing to this non-standard location is not required. In
		use, it seems to work more reliably.<BR><BR>NOTE: You cannot
		combine the location for the JDK and the JRE, as the JRE install
		removes most of the binaries and libraries installed by the JDK
		install.</P>
		<H3>Java Tools</H3>
		<P>The Apache-ANT requires the ANT_HOME environment variable to be
		set before attempting to build:<BR><BR>Unzip
		<B>apache-ant-1.6.5-bin.zip</B> to a directory. We need to set an
		environment variable ANT_HOME to this location: 
		</P>
		<PRE STYLE="margin-bottom: 0.2in">set ANT_HOME=&lt;full path to where ant was unzipped&gt;</PRE><P>
		Unzip the <B>ant-contrib-1.0b2-bin.zip</B> file. The
		ant-contrib.jar file should be <B>copied </B>into the
		%ANT_HOME%\lib directory.<BR><BR>Unzip <B>xmlbeans-2.1.0.zip</B> to
		a directory. XMLBeans requires the XMLBEANS_HOME environment
		variable to be set before attempting to build:</P>
		<PRE STYLE="margin-bottom: 0.2in">set XMLBEANS_HOME=&lt;full path to where xmlbeans was unzipped&gt;</PRE><P>
		Unzip the <B>saxonb8-1-1.zip</B> file. The saxon8.jar file should
		be <B>copied </B>to the %XMLBEANS_HOME%\lib directory. Do <I>not
		</I>download a later version of saxon 8. You will get the following
		error message if you do:</P>
		<CENTER>
			<TABLE WIDTH=80% BORDER=1 CELLPADDING=4 CELLSPACING=3 STYLE="page-break-inside: avoid">
				<COL WIDTH=256*>
				<THEAD>
					<TR>
						<TD WIDTH=100% VALIGN=TOP>
							<P><FONT FACE="Courier New, monospace">build.xml:45:
							java.lang.RuntimeException: Trying XBeans path engine...
							Trying XQRL... Trying Saxon... FAILED on declare namespace
							sans='http://www.TianoCore.org/2006/Edk2.0';
							$this/sans:FrameworkPlatformDescription/sans:Flash/sans:FvImages/sans:FvImage[@Type='ValidImageNames']/sans:FvImageNames</FONT></P>
						</TD>
					</TR>
				</THEAD>
			</TABLE>
		</CENTER>
		<P>The Ant and XMLBean tools are required to be in the path.</P>
		<PRE STYLE="margin-bottom: 0.2in">set PATH=%PATH%;%ANT_HOME%\bin;%XMLBEANS_HOME%\bin</PRE><H3>
		Cygwin</H3>
		<P>If you optionally install cygwin (for gcc support) you should
		install it in &quot;Unix&quot; mode. The gcc tool chain will not
		compile in &quot;DOS&quot; mode.</P>
		<H3 CLASS="heading-2">Environment Variables</H3>
		<P>Environment variables are <B>case sensitive</B>. You must use
		the exact case as in the examples of this document. Even though
		windows does not care about case, Java does.<BR><BR>You need to set
		WORKSPACE to the location of the edk2 directory that you pulled
		from Subversion. For example</P>
		<PRE STYLE="margin-bottom: 0.2in">set WORKSPACE=c:\workspace\edk2\</PRE><P>
		It is recommended that you wrap up all the environment variables
		above into a script that you can launch each time you begin to do
		development in your EDK II workspace.</P>
		<H3 CLASS="heading-2">The first build</H3>
		<P>You will need to edit the text file, msft_tools_def.txt, located
		in the Tools/Conf directory. This file contains the names of the
		compiler tool chains and the location of the compiler binaries. It
		has been pre-populated with the standard location for the Microsoft
		tool chains and includes the standard location of the Intel C
		Compiler for EFI Byte Code (EBC).</P>
		<P>Once the external tools are installed, the environment variables
		are set, and you have the ant executable in your path, you can try
		a build.</P>
		<OL>
			<LI><P STYLE="margin-bottom: 0in">cd to %WORKSPACE% 
			</P>
			<LI><P STYLE="margin-bottom: 0in">run edksetup.bat (this will
			build several tools that are used in edk2 development. It will
			fail if the external tools above are not properly installed.)</P>
			<LI><P STYLE="margin-bottom: 0in">cd EdkNt32Pkg 
			</P>
			<LI><P>type build 
			</P>
		</OL>
	</DIV>
</DIV>
</BODY>
</HTML>