Andrew, I agree the documentation for this should be in the same section as the clone requirements. This operation is not always required. Right now, if a platform does not use OpenSSL in CryptoPkg, then the submodule operation can be skipped. The documentation should let the developer know when it is required. Mike From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Andrew Fish via Groups.Io Sent: Monday, August 26, 2019 2:59 PM To: Gao, Liming Cc: devel@edk2.groups.io; rebecca@bsdio.com Subject: Re: [edk2-devel] git submodule update --init --recursive Liming, I see the usage of Submodules is documented at the end of the Readme.md. I would not think of going to a Submodules section to figure out how to get started or clone the repo. I did not think of reading the full Readme.md as most of it is about "How to Contribute to" not how to use the repo. >From TianoCore.org I followed this path: https://www.tianocore.org/getting-started.html https://github.com/tianocore/tianocore.github.io/wiki/Getting-Started-with-EDK-II https://github.com/tianocore/tianocore.github.io/wiki/Windows-systems or https://github.com/tianocore/tianocore.github.io/wiki/Common-instructions-for-Unix The git clone instructions don't include the "git submodule update --init" instructions and the OVMF build failed. bash$ mkdir ~/src bash$ cd ~/src bash$ git clone https://github.com/tianocore/edk2 Thanks, Andrew Fish On Aug 25, 2019, at 8:54 PM, Gao, Liming > wrote: edk2\Readme.md Submodules section gives the command to update edk2 project. Thanks Liming -----Original Message----- From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of rebecca@bsdio.com Sent: Saturday, August 24, 2019 6:24 AM To: devel@edk2.groups.io; afish@apple.com Subject: Re: [edk2-devel] git submodule update --init --recursive On 2019-08-23 14:41, Andrew Fish via Groups.Io wrote: I was following the instructions on how to build OVMF and my build failed. It looks like the reason it failed was because I did not do a `git submodule update --init --recursive`. It would be good if we could make how to clone the edk2 instructions a bit more obvious. I think we came to the conclusion that "--recursive" isn't needed. But I've found that there are cases where "--force" is required to make sure git checks out a submodule correctly. -- Rebecca Cran