AH! Okay. I would agree that a build crash without an actionable error is something we want to fix. - Bret From: Lin, Derek (HPS SW) Sent: Tuesday, April 7, 2020 7:40 PM To: devel@edk2.groups.io; Bret Barkelew Subject: RE: [edk2-devel] Basetools fail without error message due to PCD type differs in architecture. Hi Bret, Thanks for your feedback. I’m very sorry that I didn’t describe it clearly. The Basetools just “crash” in the configuration. The Basetools crash without any information, then build stops. I’ve looked into the BaseTools code, the python code crash, during the generation of PCD database for IA32. I’m not sure if the PCD spec allows different PCD type in different architectures. If the spec allows it, the build needs to be fixed and make sure it works. I remember the dynamic PCD database carry from PEI to DXE. And I don’t think that work if PEI is FixedAtBuild while DXE is Dyanamic. In my opinion, this configuration should come to a build failure. And define the error in PCD spec. Thanks, Derek From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Bret Barkelew via groups.io Sent: Wednesday, April 8, 2020 5:48 AM To: devel@edk2.groups.io; Lin, Derek (HPS SW) Subject: Re: [EXTERNAL] [edk2-devel] Basetools fail without error message due to PCD type differs in architecture. This seems like a legitimate configuration. I don’t know that it should be considered an error. A warning, maybe. This is also what the build report is perfect for finding. Did you check the PCD build report when debugging? - Bret From: Lin, Derek (HPS SW) via groups.io Sent: Sunday, April 5, 2020 7:55 PM To: devel@edk2.groups.io Subject: [EXTERNAL] [edk2-devel] Basetools fail without error message due to PCD type differs in architecture. We've found a Basetool issue. When a PCD is FixAtBuild at IA32 and Dynamic is at X64, there is no error message in this situation and it's very difficult to find the root cause. Here's example to see the issue: https://github.com/howdou/edk2/commit/333c5f33adc652308355ec100f7f385d552392fa I think it is not allowed to have FixAtBuild at IA32 and Dynamic at X64. BaseTool should have an error message for this.