[vlc-devel] Support for Windows on Arm

Pierrick Bouvier pierrick.bouvier at linaro.org
Tue Oct 18 09:08:28 UTC 2022


Hello everyone,

Are there news for Windows on Arm support, or anything you need to 
enable this?

Thanks,
Pierrick

On 9/9/22 12:20, Pierrick Bouvier wrote:
> If you need help or lack time for this, don't hesitate to ask.
> 
> On 9/9/22 11:55, Steve Lhomme wrote:
>> On 2022-09-09 11:47, Pierrick Bouvier wrote:
>>> How could nightlies build on Martin's machine?
>>>
>>> Are there other patches, or does another toolchain is used?
>>
>> The Docker image is using an outdated mingw version which doesn't
>> contain this commit:
>>
>> Revision: 97806c0ecf06b25295200d636978b06e28aa89bc
>> Author: Martin Storsjö <martin at martin.st>
>> Date: 2021-01-13 22:13:15
>> Message:
>> headers: Implement __debugbreak, MemoryBarrier and YieldProcessor for
>> armv7 and aarch64
>> Signed-off-by: Martin Storsjö <martin at martin.st>
>> ----
>> Modified: mingw-w64-headers/crt/_mingw.h.in
>> Modified: mingw-w64-headers/include/winnt.h
>>
>> We need to update the mingw version in our Docker.
>>
>>> On 9/9/22 11:44, Steve Lhomme wrote:
>>>> On 2022-09-09 11:09, Pierrick Bouvier wrote:
>>>>> Oh yes, that would be great!
>>>>>
>>>>> If only that is missing to get full builds, that seems like a cheap
>>>>> move :)
>>>>
>>>> Well, it doesn't build yet:
>>>> https://code.videolan.org/robUx4/vlc/-/jobs/1134131
>>>>
>>>> Some call to MemoryBarrier() in some gettext tool.
>>>>
>>>>> On 9/9/22 11:03, Steve Lhomme wrote:
>>>>>> On 2022-09-09 10:52, Martin Storsjö wrote:
>>>>>>> On Fri, 9 Sep 2022, Pierrick Bouvier wrote:
>>>>>>>
>>>>>>>> On 9/9/22 10:39, Martin Storsjö wrote:
>>>>>>>>> On Fri, 9 Sep 2022, Pierre Lamot wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 09/09/2022 10:29, Steve Lhomme wrote:
>>>>>>>>>>> out of the box for Windows ARM. It should build like the other
>>>>>>>>>>> Windows
>>>>>>>>>>> targets except adding `-a aarch64` to build.sh. It should work
>>>>>>>>>>> with
>>>>>>>>>>> the LLVM Dockers we use (or any llvm-mingw build). Not sure
>>>>>>>>>>> there's
>>>>>>>>>>> mingw-w64 for ARM available.
>>>>>>>>>>>
>>>>>>>>>>> There may be some contribs that don't build properly, for
>>>>>>>>>>> example Qt
>>>>>>>>>>> may refuse to build or not understand what's going on. And if it
>>>>>>>>>>> builds it's not
>>>>>>>>>>
>>>>>>>>>> according to your website [1], qt for windows arm requires version
>>>>>>>>>> 6.2,
>>>>>>>>>> but we only support Qt 5, so this may indeed be a problem if you
>>>>>>>>>> plan to
>>>>>>>>>> build the UI
>>>>>>>>>
>>>>>>>>> I dunno what that information that website is based on, but with
>>>>>>>>> upstream
>>>>>>>>> Qt (plain Qt Core) it has worked fine since around Qt 5.11 with
>>>>>>>>> llvm-mingw. Maybe it's based on what they have tested themselves?
>>>>>>>>>
>>>>>>>>> It runs just fine with the Qt backported patches in VLC's
>>>>>>>>> contrib, on
>>>>>>>>> both
>>>>>>>>> the 3.0.x and master branches.
>>>>>>>>>
>>>>>>>>
>>>>>>>> We observed issues with previous version. For instance, with
>>>>>>>> cmake-gui
>>>>>>>> that is crashing on startup. It's good to know it's working for VLC.
>>>>>>>
>>>>>>> Ok, that's good to know. FWIW, if there's an issue with older versions
>>>>>>> but which is fixed in newer ones, it's usually quite
>>>>>>> straightforward to
>>>>>>> do a reverse bisect to find out which commit fixed it, and then
>>>>>>> backport
>>>>>>> that one to the version of Qt that is used. (VLC carries half a
>>>>>>> dozen of
>>>>>>> backported Qt patches, for building the ancient Qt 5.6 with modern
>>>>>>> compilers.)
>>>>>>>
>>>>>>>> Officially, Qt is advertising support for Windows on Arm from Qt6
>>>>>>>> [1],
>>>>>>>> while Qt5 does not mention it [2]. In more, prebuilt versions are
>>>>>>>> only
>>>>>>>> available since Qt6. Not every project builds Qt from source ;).
>>>>>>>
>>>>>>> Well the prebuilt binaries don't really help people in the mingw
>>>>>>> ecosystem anyway, as those are MSVC only. And in practice I don't know
>>>>>>> of any more concrete efforts from Qt's side here (but I may have
>>>>>>> missed
>>>>>>> something) other than doing regular builds of it. But for sure, newer
>>>>>>> versions generally do come with more fixes that need to be
>>>>>>> backported if
>>>>>>> using older versions.
>>>>>>
>>>>>> BTW, I completely forgot that we do have windows ARM 64-bit building in
>>>>>> our CI already. But Qt is disabled and also mistakenly as a UWP
>>>>>> build. I
>>>>>> can try to change it to a full desktop build and see how it goes.
>>>>>>
>>>>>> https://code.videolan.org/videolan/vlc/-/jobs/1134041
>>>>>> _______________________________________________
>>>>>> vlc-devel mailing list
>>>>>> To unsubscribe or modify your subscription options:
>>>>>> https://mailman.videolan.org/listinfo/vlc-devel
>>>> _______________________________________________
>>>> vlc-devel mailing list
>>>> To unsubscribe or modify your subscription options:
>>>> https://mailman.videolan.org/listinfo/vlc-devel
>> _______________________________________________
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list