1

I followed the step-by-step article here: UEFI/EFK2 . Everything works nice until I need to actually build it. At the paragraph 'Building MdeModulePkg module package' the description says: Just type build:

bash$ build

but my Ubuntu 12.04.1 LTS says:

No command 'build' found, did you mean:
 Command 'xbuild' from package 'mono-xbuild' (main)
 Command 'guild' from package 'guile-2.0-libs' (universe)
 Command 'sbuild' from package 'sbuild' (universe)
 Command 'bwild' from package 'bacula-director-common' (main)
 Command 'buildd' from package 'buildd' (universe)
build: command not found

Maybe someone knows where exactly I can find this mysterious command?

2 Answers 2

2

The solution is to use

bash:~/src/edk2$ source edksetup.sh

bash:~/src/edk2$ build

The effect of export command inside edksetup.sh is not reflected in the main bash shell but rather in the sub-shell spawned for executing it. "source" directs it to run the script in current shell.

1

As long as you have installed the build dependencies and followed the guide exactly, I think you just need to make sure you are in the edk2 directory when you issue the build command. If you enter the build command when you are in any other directory you will get the error that you received.

Also, the build command will only work if you have run edksetup.sh and edited the correct build parameters into ~/src/edk2/Conf/target.txt (or whatever your path is).

Here is the initial output of the build command when run from the edk2 directory (with files tweaked as per the guide):

mik@Acer ~/src/edk2$ build
Build environment: Linux-3.2.0-32-generic-i686-with-Ubuntu-12.04-precise
Build start time: 00:45:15, Oct.22 2012

WORKSPACE        = /home/mike/src/edk2
ECP_SOURCE       = /home/mike/src/edk2/EdkCompatibilityPkg
EDK_SOURCE       = /home/mike/src/edk2/EdkCompatibilityPkg
EFI_SOURCE       = /home/mike/src/edk2/EdkCompatibilityPkg
EDK_TOOLS_PATH   = /home/mike/src/edk2/BaseTools

Architecture(s)  = IA32
Build target     = DEBUG
Toolchain        = GCC46

Active Platform          = /home/mike/src/edk2/MdeModulePkg/MdeModulePkg.dsc

Processing meta-data ........... done!

Then it proceeds to compile everything required.

5
  • 'build' is a script ? executable file ? Here is step-by-step description of what I did: pastebin.com/MJJs7nSQ
    – Alex F
    Oct 22, 2012 at 7:54
  • @Jasper It seems to be a script that creates the Makefile; you will still get the error if the options are not set correctly in target.txt- I think that is probably where the problem is. I just changed the options and now I get the same error, whereas when I change them back again, build works. Also, are you using git for the source, as that is what I did?
    – user76204
    Oct 22, 2012 at 10:39
  • Thanks Mik. I guess I found the problem - it's seems that 'build' script located in /BaseTools/BinWrappers/ dir but somehow it doesn't added to $PATH so I guess bash doesn't know how/where from to run it.. I'll check it
    – Alex F
    Oct 22, 2012 at 10:55
  • Anyway - most of the tutorials related to Windows based build process (even in manual: sourceforge.net/apps/mediawiki/tianocore/… ) Build Process Decoded they explain Windows build only. So I guess I switch to Windows platform
    – Alex F
    Oct 22, 2012 at 10:57
  • 1
    @Jasper Ok. I suppose that the issue is solved for us now on Ubuntu.
    – user76204
    Oct 22, 2012 at 11:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .