X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=BuildNotes2.txt;h=45520536a25cff3561fe3320e81b610ad1716522;hp=6981e94428e270d1bb2ab1c480cd60b4e237e359;hb=0ab90add0f525eb9c91ce4bc2357298c4f357d09;hpb=11dd6c397618c0ae1c71710b3fd00352a4723103;ds=sidebyside diff --git a/BuildNotes2.txt b/BuildNotes2.txt index 6981e94428..45520536a2 100644 --- a/BuildNotes2.txt +++ b/BuildNotes2.txt @@ -1,92 +1,154 @@ Intel(R) Platform Innovation Framework for EFI -EFI Development Kit II Prime (EDK II Prime) -Root Package 1.00 -2007-06-25 +EFI Development Kit II (EDK II) +2011-12-14 Intel is a trademark or registered trademark of Intel Corporation or its subsidiaries in the United States and other countries. * Other names and brands may be claimed as the property of others. -Copyright (c) 2007, Intel Corporation +Copyright (c) 2007 - 2011, Intel Corporation. All rights reserved. -EDK II Prime packages are in the development phase. They consist of: +EDK II packages can be gathered from the following address: + https://github.com/tianocore/edk2.git - BuildNotes2.txt - The build notes for this package - MdePkg - Industry-standard headers and libraries - BaseTools - Build -specific tools that are designed to help the - developer create and modify drivers and libraries - IntelFrameworkPkg - Framework headers and libraries - MdeModulePkg - Reference drivers +The detailed introduction of these packages can be found in each package +description file. (The *.dec file under the package directory) ------------------------------------------------------------------------------- -Quick Start +The most recent version of the setup instructions is available on the EDK II +web-site: + https://github.com/tianocore/tianocore.github.io/wiki/Getting%20Started%20with%20EDK%20II + + +------------------------------------------------------------------------------- +Quick Start (Windows Development Platform) ----------- -NOTE: Please confirm you have already installed Python on your machine. +In a command prompt window, change to the top-level directory of the EDK II +source. + +Note: + The first time the edksetup script is executed, it creates three files in the + %WORKSPACE%\Conf directory. The files: tools_def.txt, target.txt and + build_rule.txt, are only created if they do not exist, if they exist, they + are not touched. + +First, set up your project workspace. If you have previously initialized this +WORKSPACE, and a newer version of the *.template files in +WORKSPACE\BaseTools\Conf exists, remove the *.txt files in the WORKSPACE\Conf +directory prior to running the edksetup script. -In a command window, change to the top-level directory of the EDK II source. +For the reference build of the Nt32 Platform emulation environment, use the +edksetup.bat option: --nt32. For building other platforms or modules, this +option is not required, as Visual Studio standard includes, libraries and/or +dlls are not required for normal development. -First, set up your workspace. If you have had a setup, please make sure that -you don't have newer *.template in WORKSPACE\BaseTools\Conf. Otherwise remove -*.txt files in WORKSPACE\Conf in advance. - c:\MyWork\edk2\> edksetup newbuild + c:\MyWork\edk2\> edksetup --nt32 + +The default tool chain (named MYTOOLS) is pre-configured to use VS2008 for IA32 +and X64 target architectures and DDK3790 for IPF target architectures. To use a +different tool chain, either modify the tools_def.txt file's MYTOOLS entries, +or modify the %WORKSPACE%\Conf\target.txt file's TOOL_CHAIN_TAG. The pre-defined +tags are listed near the top of the %WORKSPACE%\Conf\tools_def.txt file, below +the Supported Tool Chains comment. +Alternatively, you may use the build command's -t option to specify a different +tool chain tag name: build -t VS2008 ... , for example. Using this method will +require that you always use the build command's -t option. If you use 64-bit +Windows OS, you should use tool chain tag name with x86, such as VS2008x86. + + +Next, go to the module directory and begin to build. This example is for the +HelloWorld application. -Second, go to the module directory (For example, MdeModulePkg\Application\HelloWorld), -and then begin to build c:\MyWork\edk2\> cd MdeModulePkg\Application\HelloWorld c:\MyWork\edk2\> build -If you want to build the modules in other packages -(For example, MdePkg\Library\BaseLib\BaseLib.inf), please edit open the BaseTools\Conf\Target.txt firstly, +If you want to build the a module in another package (for example, +MdePkg\Library\BaseLib\BaseLib.inf), please edit the file +%WORKSPACE%\Conf\Target.txt first. -change the following line +Change the following line ACTIVE_PLATFORM = MdeModulePkg/MdeModulePkg.dsc to ACTIVE_PLATFORM = MdePkg/MdePkg.dsc -and then go to MdePkg\Library\BaseLib directory and build +Then go to MdePkg\Library\BaseLib directory and type build: c:\MyWork\edk2\> cd MdePkg\Library\BaseLib c:\MyWork\edk2\> build -If you want build a platform, please set ACTIVE_PLATFORM to your desired platform dsc file, -go to directory which must be not a module's directory, and run "build" command. +If you want build a platform, ACTIVE_PLATFORM must be set to your desired +platform dsc file, go to directory which must be not a module's directory, and +run "build" command. + +Instead of changing Target.txt, you can specify platform, module and/or +architecture on command line. +For example, if you want to build NT32 platform, you can just type + + c:\MyWork\edk2\> build -p Nt32Pkg\Nt32Pkg.dsc -a IA32 + +and if you want to build HelloWorld module, you can just type + + c:\MyWork\edk2\> build -p Nt32Pkg\Nt32Pkg.dsc -a IA32 -m MdeModulePkg\Application\HelloWorld\HelloWorld.inf + +Other helpful command line options of build tool include "-v" and "-d". +The "-v" option is used to turn on the verbose build, which provide more +information during the build. "-d " option is used to +turn on the debug information which is helpful debugging build tools. + +For more information on build options, please try "build -h" on command line. + +Note: + The Windows style help option "/?" is not a valid option for the build + command. + + +------------------------------------------------------------------------------- +Supported build targets +----------------------- + +all - Build whole platform or module. It can be ignored. +genc - Generate AutoGen.c, AutoGen.h and .depex files only. +genmake - Generate makefiles in addition to files generated by "genc" target. +clean - Clean intermediate files +cleanall - Clean all generated files and directories during build, except the + generated Makefile files (top level and module makefiles) +cleanlib - Clean all generated files and directories during library build +run - Launch NT32 shell (only valid for NT32 platform) ------------------------------------------------------------------------------- Tools in Python --------------- -* Run buld tool written in Python from source - The build tool written in Python can be executed from its source directly as long as you -have the Python interpreter (version 2.5) installed. The source of Python code is locating at - - https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python - - where: +* Run build tool written in Python from source + It can be executed from its source directly as long as you have the Python + interpreter (version 2.5.4) installed. The source code is located at + WORKSPACE/BaseTools. - MyBuild.py - The temporary "build" tool from which the "build.exe" is coming - AutoGen.py - Generate AutoGen.c/.h and makefile only + where: - "MyBuild.py" steps: - 1. Run "edksetup.bat newbuild" - 2. Set ACTIVE_PLATFORM in WORKSPACE\Conf - 3. Go to platform or module directory - 4. Run " \MyBuild.py" or "\MyBuild.py" - directly. + build/build.py - The entry tool of build tools - "AutoGen.py" steps: - 1. Run "edksetup.bat newbuild" - 2. Set ACTIVE_PLATFORM in WORKSPACE\Conf - 4. Run " \AutoGen.py" or "\AutoGen.py" + "build.py" steps: + 1. Run "edksetup.bat" + 2. set PYTHONPATH to the local directory of above source + (BaseTools/Source/Python) + 3. Set ACTIVE_PLATFORM in WORKSPACE\Conf + 4. Go to platform or module directory + 5. Run " /build/build.py" or + "/build/build.py" directly. * Convert Python source to exe file - The tools written in Python can be coverted into executable program which can be executed -without Python interpreter. One of the convertion tools is called cx_Freeze at + The tools written in Python can be coverted into executable program which can + be executed without Python interpreter. One of the conversion tools is called + cx_Freeze, available at: - http://sourceforge.net/projects/cx-freeze/ + http://sourceforge.net/projects/cx-freeze/ - Suppose you have installed cx_Freeze at c:\cx_Freeze-3.0.3. Use following command line to convert MyBuild.py + If you have installed cx_Freeze at c:\cx_Freeze-3.0.3. Use the following + command lines to convert MyBuild.py to a Windows executable. - c:\cx_Freeze-3.0.3\FreezePython.exe --include-modules=encodings.cp437,encodings.gbk --install-dir=.\mybuild MyBuild.py + set PYTHONPATH=\BaseTools\Source\Python + c:\cx_Freeze-3.0.3\FreezePython.exe --include-modules=encodings.cp437,encodings.gbk,encodings.utf_16,encodings.utf_8 --install-dir=.\mybuild MyBuild.py - The generated .exe files are put in "mybuild" subdirectory. + The generated .exe files are put in "mybuild" subdirectory.