Page 1 of 1

Compilation Steps for VLC for Arm64 Windows

Posted: 11 Sep 2024 06:30
by nkshatri
Hi

I am looking for the steps to compile the VLC 4.x.x for the windows Arm64 version.

i m following the steps from https://github.com/videolan/vlc/blob/ma ... D-win32.md , but its failing, wanted to know anyone has the working steps?

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 11 Sep 2024 12:18
by TypX
It is difficult to say what went wrong without knowing what is failing and the error logs. All in all the main difference should be that you have to replace x86_64 with aarch64.

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 11 Sep 2024 14:39
by nkshatri
Here are the steps which i followed:

1. Tool chain use: https://github.com/mstorsjo/llvm-mingw/ ... h64.tar.xz
2. Exported the toolchain path
3. clone the vlc code from: https://code.videolan.org/videolan/vlc.git
4. Created new folder "build", cd to build and provided command as : ../vlc/extras/package/win32/build.sh -a aarch64
5.cd to vlc and then provided the command :/bootstrap
6. provided the configuration command:./configure --host=aarch64-w64-mingw32 --build=aarch64-w64-mingw32 --disable-a52 LDFLAGS="-static", this command is successful and able to see configuration is done for aarch64.
7. Provided the command as: make
8.Make is failed with error as:

"In file included from ../config.h:919,
from aligned_alloc.c:22:
../include/vlc_fixups.h:303:7: note: previous declaration of 'strtof' with type 'float(const char *, char **)'
303 | float strtof (const char *, char **);"

I'm suspecting that i might not be using the right toolchain, as previously i was facing different error with different toolchain

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 11 Sep 2024 15:05
by TypX
The step 4. ../vlc/extras/package/win32/build.sh -a aarch64

Already calls bootstrap/configure and make

When it ends you should have everything already and subsequent step looks dubious.

Please note that llvm-mingw-20240903-ucrt-ubuntu-20.04-aarch64.tar.xz is meant to be run on an aarch64 machine if your building machine uses an Intel/AMD CPU you should use the x86_64 toolchain.

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 13 Sep 2024 14:23
by nkshatri
Thanks for the help, i m able to compile

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 16 Sep 2024 09:23
by nkshatri
Hi

I have compiled the VLC locally for vlc 4.x.x Arm64 windows and also i can see there are nightly builds available for VLC 4.x.x Arm64 windows, URL: https://artifacts.videolan.org/vlc/nigh ... -arm-llvm/

we wanted to understand how these Arm64 and x64 windows VLC 4.x.x. builds are getting test?

Since, vlc 4.x.x arm64 binaries for windows is crashing. (For both Locally compiled and Available as nightly build)

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 19 Sep 2024 10:59
by TypX
The CI mostly test that things build but testing everything on all platforms on all architectures is impossible for the small videolan team so it's tested on a best effort basis. Arm64 windows are still quite rare (and windows focused dev even rarer) compared to their x64 counterparts so expect that less tests are made on them especially when 4.0 isn't even out. Nightly builds are expected to break.

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 19 Sep 2024 12:30
by Rémi Denis-Courmont
Windows builds are tested by people downloading them and testing them manually.

Since the CI infrastructure is mostly Linux x86, it is not possible to test Windows, or Arm and even less so the combination of both. Besides the test suite is very limited in what it can do.

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 23 Sep 2024 08:35
by nkshatri
Appreciate Quick response.

we have following queries:

1. wanted to understand if we have Windows on Arm device available to test the nightly arm 64 windows build.
2. What all tests we have to validate the new fixes/check-ins?

Re: Compilation Steps for VLC for Arm64 Windows

Posted: 23 Sep 2024 08:53
by Rémi Denis-Courmont
You should know that better than anyone else. Nobody here can answer those questions for you.