Page 1 of 2

Windows 10 ARM64 support

PostPosted: Fri Oct 04, 2019 11:27 am
by cnthomas16
Hi Everyone,

I saw a recent commit for Win10 ARM64 support and I am hoping someone can share the status of CEF on this platform. I attempted the ARM64 build from automate-git.py in the 3904 branch but ran into a failure. I understand it may not be ready but the build error is noted below. I'm not sure if it is required but I do have the Visual Studio 2017 ARM options installed.

> python automate-git.py --download-dir=Z:\ --branch=3904 --arm64-build --no-debug-build --no-distrib --no-build
...
12:58:37 See //build/toolchain/win/BUILD.gn:412:3: whence it was called.
12:58:37 win_toolchains("arm64") {
12:58:37 ^------------------------
12:58:37 See //BUILD.gn:221:7: which caused the file to be included.
12:58:37 "//third_party/catapult/telemetry:bitmaptools($host_toolchain)",
12:58:37 ^--------------------------------------------------------------
12:58:37 Traceback (most recent call last):
12:58:37 File "Z:/chromium/src/build/toolchain/win/setup_toolchain.py", line 300, in <module>
12:58:37 main()
12:58:37 File "Z:/chromium/src/build/toolchain/win/setup_toolchain.py", line 287, in main
12:58:37 assert vc_lib_atlmfc_path
12:58:37 AssertionError

Thanks,
-Chris

Re: Windows 10 ARM64 support

PostPosted: Fri Oct 04, 2019 12:02 pm
by magreenblatt
Support was added in master only, so you need to build master. Visual Studio ARM64 toolchain needs to be installed.

Re: Windows 10 ARM64 support

PostPosted: Fri Oct 04, 2019 12:07 pm
by magreenblatt
magreenblatt wrote:Support was added in master only, so you need to build master.

Actually, looks like it made the 3904 branch cut so that branch should be OK also.

Re: Windows 10 ARM64 support

PostPosted: Fri Oct 04, 2019 12:16 pm
by magreenblatt
Do you have Visual Studio Pro or better? Did you install MFC/ATL support for ARM64 (if such a thing exists)?

Re: Windows 10 ARM64 support

PostPosted: Mon Oct 07, 2019 11:08 am
by cnthomas16
Thanks Marshall, that was indeed the issue. Even though I had ARM64 C++ support installed there were additional options for MFC/ATL ARM64 buried deep in the installer tool.

I am unable to link libcef.dll in the end because I am getting an out of memory error from the linker. Does anyone know about memory requirements for this yet? For reference my build machine is Windows Server 2012 with 31MB of memory. I am going to increase the memory and try again.

-Chris

Re: Windows 10 ARM64 support

PostPosted: Mon Oct 07, 2019 11:17 am
by magreenblatt
If you're creating a Debug build it might be https://bitbucket.org/chromiumembedded/cef/issues/2679. I'm not sure that issue will reproduce with an ARM64 build, but you can try the reported workarounds in any case.

Re: Windows 10 ARM64 support

PostPosted: Wed Oct 09, 2019 10:56 am
by cnthomas16
It does seem like the same issue, non component debug builds are just not feasible right now. I had to create a dedicated 2GB swap partition to keep it from running out of memory and I gave up on the idea after 14 hours and 1.35TB of memory were consumed.

I did find that the link failed using the Visual C++ 2017 arm64 compiler, it was trying to link in non-existent opengl libraries. Switching over to the Visual C++ 2019 arm64 compiler fixed this.

Is anyone currently working on packing support for this platform (make_distrib.py)?

Thanks,
-Chris

Re: Windows 10 ARM64 support

PostPosted: Wed Oct 09, 2019 11:06 am
by magreenblatt
cnthomas16 wrote:Is anyone currently working on packing support for this platform (make_distrib.py)?

It's possible that the ARM guys are working on it but I haven't heard anything. It shouldn't be a very large change. You're welcome to submit a PR.

Re: Windows 10 ARM64 support

PostPosted: Thu Feb 06, 2020 2:39 pm
by vbnsit
which exact version of visual studio 2019 you moved to for arm64 compiler i am facing the same issue

Re: Windows 10 ARM64 support

PostPosted: Wed Apr 22, 2020 7:32 am
by G0apher
What are the expected timelines for Windows ARM64 builds to get posted at http://opensource.spotify.com/cefbuilds/index.html? Other than the master is there a stable feature branch to follow the progress of the same? Thanks!