Hi Linus,
The problem you are seeing appears to be with your development environment setup. It may be worth trying the settings described in ‘Laszlo's unkempt git guide for edk2 contributors and maintainers’
at
https://github.com/tianocore/tianocore.github.io/wiki/Laszlo%27s-unkempt-git-guide-for-edk2-contributors-and-maintainers
Also, you could try setting the GCC_HOST_PREFIX environment variable to force the build system to use nmake.
set GCC_HOST_PREFIX=n
call %WORKSPACE%\edk2\edksetup.bat Reconfig
build -a AARCH64 -t GCC5 -p Platform\ARM\VExpressPkg\ArmVExpress-FVP-AArch64.dsc -b DEBUG
Regards,
Sami Mujawar
From:
Linus Liu <Linus_Liu@phoenix.com>
Date: Wednesday, 1 September 2021 at 11:09
To: Sami Mujawar <Sami.Mujawar@arm.com>, "devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: nd <nd@arm.com>
Subject: RE: [edk2-devel] building-edkii-eufi-firmware-for-arm-platforms fail on windows 10.
Dear Sir
After switching python 3.7. Still can’t work.
Has other error.
Thanks.
Building ... d:\code\arm\edk2\ArmPkg\Library\CompilerIntrinsicsLib\CompilerIntrinsicsLib.inf [AARCH64]
--- Logging error ---
Traceback (most recent call last):
File "C:\Python37\lib\logging\__init__.py", line 985, in emit
stream.write(msg)
UnicodeEncodeError: 'cp950' codec can't encode character '\u59b8' in position 17: illegal multibyte sequence
Call stack:
File "C:\Python37\lib\threading.py", line 885, in _bootstrap
self._bootstrap_inner()
File "C:\Python37\lib\threading.py", line 917, in _bootstrap_inner
self.run()
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\AutoGenWorker.py", line 91, in run
self._InfoLogger_agent.log(log_message.levelno,log_message.getMessage())
Message: "'make' OΥ~ROBi檺{Χ\u59b8\u0261C"
Arguments: ()
build.py...
: error 7000: Failed to execute command
make tbuild [d:\code\arm\Build\ArmVExpress-FVP-AArch64\DEBUG_GCC5\AARCH64\ArmPkg\Library\CompilerIntrinsicsLib\CompilerIntrinsicsLib]
build.py...
: error F002: Failed to build module
d:\code\arm\edk2\ArmPkg\Library\CompilerIntrinsicsLib\CompilerIntrinsicsLib.inf [AARCH64, GCC5, DEBUG]
- Failed -
Build end time: 18:02:33, Sep.01 2021
Build total time: 00:00:05
From: Sami Mujawar [mailto:Sami.Mujawar@arm.com]
Sent: Wednesday, September 1, 2021 5:30 PM
To: devel@edk2.groups.io; Linus Liu
Cc: nd
Subject: Re: [edk2-devel] building-edkii-eufi-firmware-for-arm-platforms fail on windows 10.
Hi Linus,
It looks like Python2.7 is not working with the EDK2 build system on Windows (at least for Arm builds). Can you try using Python 3.7 instead?
I am using Python 3.7.3 and the build is working. Please let me know if switching to Python 3.7 does not work.
Regards,
Sami Mujawar
From:
<devel@edk2.groups.io> on behalf of "Linus Liu via groups.io" <Linus_Liu=phoenix.com@groups.io>
Reply to: "devel@edk2.groups.io" <devel@edk2.groups.io>, "Linus_Liu@phoenix.com" <Linus_Liu@phoenix.com>
Date: Wednesday, 1 September 2021 at 08:50
To: "devel@edk2.groups.io" <devel@edk2.groups.io>
Subject: [edk2-devel] building-edkii-eufi-firmware-for-arm-platforms fail on windows 10.
Dear Sir
I’ve followed the attachment try to build UEFI on ARM platform.
But when I ran the below command.
build -a AARCH64 -t GCC5 -p Platform\ARM\VExpressPkg\ArmVExpress-FVP-AArch64.dsc -b DEBUG
It shows
Build fail.
Then
I’ve tried.
build -a AARCH64 -t GCC5 -p Platform\ARM\VExpressPkg\ArmVExpress-FVP-AArch64.dsc -b DEBUG clean
It shows
Build environment: Windows-10-10.0.18362
Build start time: 12:00:00, Sep.01 2021
WORKSPACE = d:\code\arm
PACKAGES_PATH = d:\code\arm\edk2;d:\code\arm\edk2-platforms
EDK_TOOLS_PATH = d:\code\arm\edk2\basetools
EDK_TOOLS_BIN = d:\code\arm\edk2\basetools\bin\win32
CONF_PATH = d:\code\arm\edk2\conf
PYTHON_COMMAND = C:\Python27\python.exe
Architecture(s) = AARCH64
Processing meta-data .Build target = DEBUG
Toolchain = GCC5
Active Platform = d:\code\arm\edk2-platforms\Platform\ARM\VExpressPkg\ArmVExpress-FVP-AArch64.dsc
. done!
build.py...
: error C0DE: Unknown fatal error when processing [d:\code\arm\edk2\MdeModulePkg\Universal\DisplayEngineDxe\DisplayEngineDxe.inf]
(Please send email to devel@edk2.groups.io for help, attaching following call stack trace!)
(Python 2.7.18 on win32) Traceback (most recent call last):
File "D:\Code\Arm\edk2\BaseTools\Source\Python\build\build.py", line 2698, in Main
MyBuild.Launch()
File "D:\Code\Arm\edk2\BaseTools\Source\Python\build\build.py", line 2491, in Launch
self._BuildPlatform()
File "D:\Code\Arm\edk2\BaseTools\Source\Python\build\build.py", line 1824, in _BuildPlatform
self._BuildPa(self.Target, Pa, FfsCommand=CmdListDict,PcdMaList=PcdMaList)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\build\build.py", line 1293, in _BuildPa
AutoGenObject.CreateCodeFile(True)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\Common\caching.py", line 18, in CallMeHere
Value = self._function(obj, *args,**kwargs)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\PlatformAutoGen.py", line 173, in CreateCodeFile
Ma.CreateCodeFile(CreateModuleCodeFile)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\ModuleAutoGen.py", line 1829, in CreateCodeFile
for File in self.AutoGenFileList:
File "D:\Code\Arm\edk2\BaseTools\Source\Python\Common\caching.py", line 28, in __get__
Value = obj.__dict__[self._function.__name__] = self._function(obj)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\ModuleAutoGen.py", line 983, in AutoGenFileList
GenC.CreateCode(self, AutoGenC, AutoGenH, StringH, AutoGenUniIdf, UniStringBinBuffer, StringIdf, AutoGenUniIdf, IdfGenBinBuffer)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\GenC.py", line 2047, in CreateCode
CreateUnicodeStringCode(Info, AutoGenC, StringH, UniGenCFlag, UniGenBinBuffer)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\GenC.py", line 1706, in CreateUnicodeStringCode
Header, Code = GetStringFiles(Info.UnicodeFileList, SrcList, IncList, Info.IncludePathList, ['.uni', '.inf'], Info.Name, CompatibleMode, ShellMode, UniGenCFlag, UniGenBinBuffer, FilterInfo)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\StrGather.py", line 557, in GetStringFiles
Uni = UniFileClassObject(sorted(UniFilList, key=lambda x: x.File), IsCompatibleMode, IncludePathList)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\UniClassObject.py", line 230, in __init__
self.LoadUniFiles(FileList)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\UniClassObject.py", line 542, in LoadUniFiles
self.LoadUniFile(File)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\UniClassObject.py", line 472, in LoadUniFile
self.GetLangDef(File, Line)
File "D:\Code\Arm\edk2\BaseTools\Source\Python\AutoGen\UniClassObject.py", line 236, in GetLangDef
Lang = shlex.split(Line.split(u"//")[0])
File "C:\Python27\lib\shlex.py", line 275, in split
lex = shlex(s, posix=posix)
File "C:\Python27\lib\shlex.py", line 25, in __init__
instream = StringIO(instream)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe7' in position 20: ordinal not in range(128)
- Failed -
Build end time: 12:00:02, Sep.01 2021
Build total time: 00:00:03
Could you kindly help on it?
Thanks.