> On Apr 9, 2021, at 6:33 PM, Bret Barkelew via groups.io wrote: > > Andrew, > Not a scheme that I would consider a “good” scheme. You can see what we’re running CI against (in Mu and EDK, both), by checking for the “UsePythonVersion” command in the .azurepipelines/pr-gate-steps.yml file. > Bret, If I understand correctly the CI list is the recommended versions, but not the required versions. Do we have any concept of the required versions? I guess we could put a python assert to enforce min Python version? I guess we could be more aggressive on the required Python version (forces people to install a custom Python version for the edk2 build), or build a CI test that tests the min Python version for the tools... Sorry mostly thinking out loud…. Thanks, Andrew Fish > Shivanshi, > I just ran a build on my system with that exact version of Python (3.9.0). Did your build produce a “BUILD_TOOLS_REPORT.json” file? If so, can you send it? > Can you also send the exact command that you’re running when you see this issue? > > Thanks! > > - Bret > > From: Andrew Fish > Sent: Friday, April 9, 2021 4:54 PM > To: edk2-devel-groups-io ; Bret Barkelew > Cc: Shivanshi.Pandya@dell.com > Subject: [EXTERNAL] Re: [edk2-devel] Build Failed for QEMU35Pkg > > > > > On Apr 9, 2021, at 1:55 PM, Bret Barkelew via groups.io > wrote: > > It looks like a Python 3.8.x vs 3.9.x issue. > > > Do we have a scheme to require a min Python version? > > Thanks, > > Andrew Fish > > > It looks as if you’re using Mu Q35 as your platform. Can you tell me what branch you’re on? > > - Bret > > From: Pandya, Shivanshi via groups.io > Sent: Friday, April 9, 2021 1:52 PM > To: devel@edk2.groups.io > Subject: [EXTERNAL] [edk2-devel] Build Failed for QEMU35Pkg > > Hello, > > Build failed with following call trace > > build.py... > INFO - : error C0DE: Unknown fatal error when processing [c:\bea\dfci\mu_tiano_platforms\Common\PRM\PrmPkg\Library\DxePrmModuleDiscoveryLib\DxePrmModuleDiscoveryLib.inf [X64, VS2017, DEBUG]] > INFO - > INFO - (Please send email to devel@edk2.groups.io for help, attaching following call stack trace!) > INFO - > INFO - (Python 3.9.0 on win32) Traceback (most recent call last): > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\build\build.py", line 2635, in Main > INFO - MyBuild.Launch() > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\build\build.py", line 2430, in Launch > INFO - self._MultiThreadBuildPlatform() > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\build\build.py", line 2238, in _MultiThreadBuildPlatform > INFO - Wa, self.BuildModules = self.PerformAutoGen(BuildTarget,ToolChain) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\build\build.py", line 2112, in PerformAutoGen > INFO - CmdListDict = self._GenFfsCmd(Wa.ArchList) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\build\build.py", line 2009, in _GenFfsCmd > INFO - GenFfsDict = GenFds.GenFfsMakefile('', GlobalData.gFdfParser, self, ArchList, GlobalData) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\GenFds.py", line 541, in GenFfsMakefile > INFO - FdObj.GenFd(Flag=True) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\Fd.py", line 131, in GenFd > INFO - RegionObj.AddToBuffer (FdBuffer, self.BaseAddress, self.BlockSizeList, self.ErasePolarity, GenFdsGlobalVariable.ImageBinDict, self.DefineVarDict, Flag=Flag) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\Region.py", line 134, in AddToBuffer > INFO - FvObj.AddToBuffer(FvBuffer, FvBaseAddress, BlockSize, BlockNum, ErasePolarity, Flag=Flag) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\Fv.py", line 127, in AddToBuffer > INFO - FileName = FfsFile.GenFfs(MacroDict, FvParentAddr=BaseAddress, IsMakefile=Flag, FvName=self.UiFvName) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\FfsInfStatement.py", line 518, in GenFfs > INFO - InputSectList, InputSectAlignments = self.__GenComplexFileSection__(Rule, FvChildAddr, FvParentAddr, IsMakefile=IsMakefile) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\FfsInfStatement.py", line 969, in __GenComplexFileSection__ > INFO - SectList, Align = Sect.GenSection(self.OutputPath, self.ModuleGuid, SecIndex, self.KeyStringList, self, IsMakefile = IsMakefile) > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\EfiSection.py", line 218, in GenSection > INFO - GenFdsGlobalVariable.GenerateSection(OutputFile, [], 'EFI_SECTION_USER_INTERFACE', > INFO - File "C:\BEA\DFCI\mu_tiano_platforms\MU_BASECORE\BaseTools\Source\Python\GenFds\GenFdsGlobalVariable.py", line 466, in GenerateSection > INFO - SectionData.fromstring(Ui.encode("utf_16_le")) > INFO - AttributeError: 'array.array' object has no attribute 'fromstring' > > Kind Regards, > Shivanshi > > <79C90400E51C4EC6A197393CD98D0F7A.png> > > > >