trouble building UWP version

​VLC for Windows Store​ specific questions

This includes WinRT, Windows RT, Windows Phone, Windows Mobile and Xbox 1
badhras
New Cone
New Cone
Posts: 2
Joined: 23 Nov 2016 02:53

trouble building UWP version

Postby badhras » 23 Nov 2016 03:31

I'm running into a few problems with building. I am using Visual Studio 2015 on Windows 10/Build 10586.

ISSUE #1
Extract the libVLC contents from the archive to vlc/<os>/vlc-<platform>/<configuration>
<os> is either Windows, Windows Phone or Universal (Universal *includes* W10M)
<platform> is either ARM or x86
<configuration> is Debug or Release
What is the "vlc" directory relative to? For example, if extracted vlc-winrt-2.1.2-17370e1f70d175eec972202b04144eab4509c880.zip to C:\_src\vlc-winrt-2.1.2, does that mean "vlc" is C:\_src\vlc-winrt-2.1.2 or C:\_src\vlc-winrt-2.1.2\vlc.

ISSUE #2
When I attempt to build and package the front-end (open build/VLC_WINRT.sln and then Create App Packages for either Debug/x86 or Debug/x64), I get build errors within Visual Studio. In particular, numerous files (e.g. EqualizerCX.cpp, EventManagerCX.cpp, DialogCX.cpp, InstanceCX.cpp, etc.) in ..\libvlcpp\cppcx cannot be opened because they don't exist, vlc/vlc.h and vlc_common.h cannot be found, either. I looked for these source files in vlc-winrt-2.1.2-17370e1f70d175eec972202b04144eab4509c880.zip and vlc-x86_64-win10-20160610-1446.7z but could not find them. How do I get these files?

ISSUE #3
"git submodule update --init" in the vlc-winrt/ folder.
I have tried to run this from both C:\_src\vlc-winrt-2.1.2. I always get a "fatal: Not a git repository (or any of the parent directories): .git" message. I can see that the folder has .gitattributes, .gitignore, .gitmodules but I have no idea why I'm getting this error. If it helps, git --version returns git version 2.10.1.windows.1.

ISSUE #4
Install VCRT dependency:
Add-AppxPackage Dependencies/x86/*
( or Add-AppxPackage Dependencies/x86/Microsoft.VCLibs.x86.Debug.11.00.appx if you feel like it )
I tried to make this work, but I don't see any similarly-named appx packages. Are these appx packages created in a previous step, or acquired from someplace?

chouquette
Developer
Developer
Posts: 291
Joined: 15 Apr 2010 00:54

Re: trouble building UWP version

Postby chouquette » 29 Nov 2016 22:55

Hi,

I'll try to reply to everything in order :)

The first thing is that you're using build 10586, while the current version has only been tested on RS1, or Build 14393 if my memory serves me right. There's a "th2" branch, for your build, but it hasn't been maintained in a while. That's on our todolist, but not the highest priority either to be honest.
What is the "vlc" directory relative to?
It's relative to the place you cloned the git repository.
So for instance, for the x64 architecture, I have this folder: C:\msys32\home\Hugo\winrt\libvlc\Universal\vlc-amd64\Debug, where C:\msys32\home\Hugo\winrt\libvlc is what we mean by "vlc" in the example
For example, if extracted
That seems to indicate you downloaded a tarball. It would explain why you're having the issue number 3.
If you're aiming at building VLC for UWP yourself, I *strongly* encourage you to clone the git repo by using the

Code: Select all

git clone https://code.videolan.org/videolan/vlc-winrt.git
command. That way you'll be able to initialize the submodules, and can easily fetch the latest changes.
I get build errors within Visual Studio. In particular, numerous files (e.g. EqualizerCX.cpp, EventManagerCX.cpp, DialogCX.cpp, InstanceCX.cpp, etc.) in ..\libvlcpp\cppcx cannot be opened because they don't exist, vlc/vlc.h and vlc_common.h cannot be found, either.
Those are 2 separate issues:
- EqualizerCX and its friends are now part of the repo (since a couple days) so you should download a recent snapshot (even though I again strongly recommend using git, in which can you can just git pull)
- vlc/vlc.h should be part of the VLC build you can download from http://nightlies.videolan.org/build/ (except for the ARM version)

Solving issue 1 should solve this as well.

Regarding Issue 4, to be honest I don't recall using the command line to build an Appx, you should be fine using Visual Studio's UI

I hope that helps!

badhras
New Cone
New Cone
Posts: 2
Joined: 23 Nov 2016 02:53

Re: trouble building UWP version

Postby badhras » 30 Nov 2016 12:30

Hi and thanks for your detailed reply.

I've migrated the dev environment to 14393, and I'm using git to clone the entire vlc-winrt repo to a h:\_src\vlc-winrt folder. I strongly agree with your recommendation to git clone https://code.videolan.org/videolan/vlc-winrt.git. FWIW, the README doesn't mention anything about cloning the entire vlc-winrt git repository. Hopefully this thread can be used to inform other people to do that.

I successfully did the git submodule update --init step.
I downloaded vlc-x86_64-win10-20161130-0231.7z from nightlies.videolan.org/build/winrt-x86_64 and extracted it to h:\_src\vlc-winrt\libvlc\Universal\vlc-amd64\Debug.
After that I was able to build the solution.

A couple bits of advice to others:
  • For some reason, the nightlies.videolan.org/build/winrt-x86_64 listing started with Jun builds, proceeded correctly to Nov builds, and then reverted to Jun builds. This caused me to inadvertently download a Jun build. This strange ordering happened on 2 different computers, with Edge and Chrome browsers showing the same behavior. Once I got the correct/latest nightly, building build/VLC.sln worked without issues.
  • When downloading the Sqlite vsix, be sure to download the version referenced in the source code. I initially downloaded and installed sqplite-uwp-3150100.vsix but this caused Visual Studio to complain that it couldn't find sqlite 3.15.0.0. Uninstalling sqplite-uwp-3150100.vsix and installing sqplite-uwp-3150000.vsix made the build work.
Now for the interesting challenge: cross-compiling libVLC for WinRT.

The readme says to start with "A very, very, very recent Linux" - if I set up something like Ubuntu 16.04.1 LTS on a VM, or is there a particular distrib/version/setup that you recommend?

mfe_
New Cone
New Cone
Posts: 3
Joined: 30 Dec 2016 15:36

Re: trouble building UWP version

Postby mfe_ » 03 Jan 2017 10:01

Thanks both of you. I could solve with your posts some issues.
I get build errors within Visual Studio. In particular, numerous files (e.g. EqualizerCX.cpp, EventManagerCX.cpp, DialogCX.cpp, InstanceCX.cpp, etc.) in ..\libvlcpp\cppcx cannot be opened because they don't exist, vlc/vlc.h and vlc_common.h cannot be found, either.
Those are 2 separate issues:
- EqualizerCX and its friends are now part of the repo (since a couple days) so you should download a recent snapshot (even though I again strongly recommend using git, in which can you can just git pull)
- vlc/vlc.h should be part of the VLC build you can download from http://nightlies.videolan.org/build/ (except for the ARM version)
I searched the videolan repository for "EqualizerCX" but I did not found any repository which contains the proper file. Can you maybe submit me the link to the correct repository? Thanks.


Return to “​VLC for Windows Store​”

Who is online

Users browsing this forum: No registered users and 18 guests