ortclib / ortclib-sdk

C# / C++ ORTC Lib SDK for UWP, iOS, and Android
BSD 2-Clause "Simplified" License
100 stars 36 forks source link

Error during build for PeerCC Client #19

Closed rishvanjay closed 6 years ago

rishvanjay commented 6 years ago

1>------ Build started: Project: WebRtc.Builder, Configuration: Debug x86 ------ 2>------ Build started: Project: WebRtc.Stats.Observer, Configuration: Debug Win32 ------ 3>------ Build started: Project: ChatterBoxClient.Universal.BackgroundRenderer, Configuration: Debug Win32 ------ 4>------ Build started: Project: ChatterBox.Client.WebRTCSwapChainPanel, Configuration: Debug Win32 ------ 2>Running message compiler on ......\org\webrtc\stats\etw_providers.man 4>WebRTCSwapChainPanel.cpp 3>MediaEngineNotify.cpp 3>RemoteHandle.cpp 3>Renderer.cpp 3>SchemeHandler.cpp 2>webrtc_stats_network_sender.cpp 2>webrtc_stats_observer.cpp 2>c:\users\rmaheshwari\git clones\ortclib-sdk\webrtc\xplatform\webrtc\webrtc\base\json.h(18): fatal error C1083: Cannot open include file: 'json/json.h': No such file or directory (compiling source file ......\org\webrtc\stats\webrtc_stats_network_sender.cpp) 4> Creating library ..\Output\ChatterBox.Client.WebRTCSwapChainPanel\bin\x86\Debug\ChatterBox.Client.WebRTCSwapChainPanel.lib and object ..\Output\ChatterBox.Client.WebRTCSwapChainPanel\bin\x86\Debug\ChatterBox.Client.WebRTCSwapChainPanel.exp 2>Done building project "WebRtc.Stats.Observer.vcxproj" -- FAILED. 5>------ Build started: Project: ChatterBox.Server, Configuration: Debug x86 ------ 5> ChatterBox.Server -> C:\Users\rmaheshwari\Git clones\ortclib-sdk\common\windows\samples\ChatterBox\Output\ChatterBox.Server\bin\x86\Debug\ChatterBox.Server.exe 4>ChatterBox.Client.WebRTCSwapChainPanel.vcxproj -> C:\Users\rmaheshwari\Git clones\ortclib-sdk\common\windows\samples\ChatterBox\ChatterBox.Client.WebRTCSwapChainPanel..\Output\ChatterBox.Client.WebRTCSwapChainPanel\bin\x86\Debug\ChatterBox.Client.WebRTCSwapChainPanel.dll 1> [92mWebrtc build is started. It will take couple of minutes. [0m 1> [92mWorking ... [0m 1> [92mx86 [0m 1> [92mPlatform x86 [0m 1> Visual Studio path is "C:\Program 1> Determining compiler options ... 1> CPU arhitecture is x64 1> Selected compiler option is amd64_x86 1> Microsoft (R) Build Engine version 4.7.2556.0 1> [Microsoft .NET Framework, version 4.0.30319.42000] 1> Copyright (C) Microsoft Corporation. All rights reserved. 1>
1>MSBUILD : error MSB1009: Project file does not exist. 1> Switch: C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\windows\projects\msvc\WebRtc.Builder.Universal..........\webrtc\xplatform\webrtc\webrtcLib.sln 1>
1>EXEC : [91mCRITICAL error : Building WebRTC projects for x86 has failed [0m 1>
1>
1> [91mFAILURE: Building WebRtc library has failed [0m 1>
1> [93mTotal execution time: 00:00:20 (20s total) [0m 1> 'C:\Users\rmaheshwari\Git' is not recognized as an internal or external command, 1> operable program or batch file. 1> Source path is C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug 1> Destination path is C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug....\WEBRTC_BUILD\webrtc\Debug\x86\ 1> C:\Users\rmaheshwari\Git folder already exists 1>EXEC : error : Invalid argument/option - 'clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug'. 1> Type "FORFILES /?" for usage. 1> The system cannot find the path specified. 1>
1>EXEC : [91mCRITICAL error : Failed combining libs [0m 1>
1>
1> [91mFAILURE: Building WebRtc library has failed [0m 1>
1> [93mTotal execution time: 00:00:21 (21s total) [0m 1> 'C:\Users\rmaheshwari\Git' is not recognized as an internal or external command, 1> operable program or batch file. 1> Moving pdbs from C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug to C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug....\WEBRTC_BUILD\webrtc\Debug\x86\ 1>EXEC : error : Invalid argument/option - 'clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug'. 1> Type "FORFILES /?" for usage. 1> C:\Users\rmaheshwari\Git folder already exists 1> Created folder C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\webrtc\ 1> The system cannot find the path specified. 1> Moving C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug to C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\webrtc\ 1> The syntax of the command is incorrect. 1>
1> [93mWARNING: Failed moving C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\Debug to C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\xplatform\webrtc\build_win10_x86\webrtc\ [0m 1>
1>
1> [92mSuccess: WebRtc library is built successfully. [0m 1>
1> [93mTotal execution time: 00:00:26 (26s total) [0m 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(1331,5): error MSB3073: The command "call "C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\windows\projects\msvc\WebRtc.Builder.Universal..........\bin\buildWebRTC.bat" "C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\windows\projects\msvc\WebRtc.Builder.Universal..........\webrtc\xplatform\webrtc\webrtcLib.sln" Debug x86 webrtc" exited with code -1. 6>------ Build started: Project: Org.WebRtc (Api\Org.WebRtc\Org.WebRtc), Configuration: Debug Win32 ------ 6>DataChannel.cc 6>GlobalObserver.cc 6>Marshalling.cc 6>Media.cc 3> Creating library ..\Output\ChatterBoxClient.Universal.BackgroundRenderer\bin\x86\Debug\ChatterBoxClient.Universal.BackgroundRenderer.lib and object ..\Output\ChatterBoxClient.Universal.BackgroundRenderer\bin\x86\Debug\ChatterBoxClient.Universal.BackgroundRenderer.exp 3>ChatterBoxClient.Universal.BackgroundRenderer.vcxproj -> C:\Users\rmaheshwari\Git clones\ortclib-sdk\common\windows\samples\ChatterBox\ChatterBoxClient.Universal.BackgroundRenderer..\Output\ChatterBoxClient.Universal.BackgroundRenderer\bin\x86\Debug\ChatterBoxClient.Universal.BackgroundRenderer.dll 7>------ Build started: Project: BackgroundHost, Configuration: Debug Win32 ------ 6>MediaSourceHelper.cc 6>PeerConnectionInterface.cc 6>RTMediaStreamSource.cc 7>BackgroundHost.cpp 6>c:\users\rmaheshwari\git clones\ortclib-sdk\webrtc\windows\org\webrtc\wrapper\mediasourcehelper.cc(15): fatal error C1083: Cannot open include file: 'libyuv/convert.h': No such file or directory 6>WebRtcMediaSource.cc 6>c:\users\rmaheshwari\git clones\ortclib-sdk\webrtc\windows\org\webrtc\wrapper\rtmediastreamsource.cc(15): fatal error C1083: Cannot open include file: 'libyuv/convert.h': No such file or directory 6>WebRtcMediaStream.cc 7> Creating library ..\Output\BackgroundHost\bin\x86\Debug\BackgroundHost.lib and object ..\Output\BackgroundHost\bin\x86\Debug\BackgroundHost.exp 6>c:\users\rmaheshwari\git clones\ortclib-sdk\webrtc\windows\org\webrtc\wrapper\webrtcmediastream.cc(20): fatal error C1083: Cannot open include file: 'libyuv/convert.h': No such file or directory 7>BackgroundHost.vcxproj -> C:\Users\rmaheshwari\Git clones\ortclib-sdk\common\windows\samples\ChatterBox\BackgroundHost..\Output\BackgroundHost\bin\x86\Debug\BackgroundHost.exe 7>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\VisualStudio\v15.0\AppxPackage\Microsoft.AppXPackage.Targets(2428,5): warning APPX0108: The certificate specified has expired. For more information about renewing certificates, see http://go.microsoft.com/fwlink/?LinkID=241478. 7>C:\Users\rmaheshwari\Git clones\ortclib-sdk\common\windows\samples\ChatterBox\Output\BackgroundHost\bin\x86\Debug\AppxManifest.xml : error APPX0501: Validation error. error 80080204: App manifest validation error: Line 47, Column 12, Reason: If it is not an audio background task, it is not allowed to have EntryPoint="ChatterBox.Background.Tasks.VoipTask" without ActivatableClassId in windows.activatableClass.inProcessServer. 7>Done building project "BackgroundHost.vcxproj" -- FAILED. 6>Done building project "Org.WebRtc.vcxproj" -- FAILED. 8>------ Build started: Project: ChatterBox.Background, Configuration: Debug x86 ------ 9>------ Build started: Project: PeerConnectionClient.WebRtc, Configuration: Debug x86 ------ 10>------ Build started: Project: appRTC_win_JS.Win10, Configuration: Debug x86 ------ 10>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2427,6): warning MSB3851: This project targets "UAP, Version=10.0.14393.0", but it is attempting to reference "C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\windows\solutions\Build\Output\x86\Debug\Org.WebRtc\Org.WebRtc.winmd" targeting "UAP,Version=10.0.17134.0", which is invalid. 10>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2373,5): warning MSB3842: Project "appRTC_win_JS.Win10" depends upon SDK "Visual C++ 2015 Runtime for Universal Windows Platform Apps v14.0" which supports apps targeting "UAP 10.0". To verify whether "Visual C++ 2015 Runtime for Universal Windows Platform Apps v14.0" is compatible with "UAP 10.0.14393.0", contact the SDK author or see http://go.microsoft.com/fwlink/?LinkID=309181. 10>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Microsoft.Common.targets\ImportBefore\Microsoft.Cpp.VCLibs120Universal.targets(103,5): warning MSB3842: Project "appRTC_win_JS.Win10" depends upon SDK "Microsoft Universal CRT Debug Runtime v10.0.14393.0" which supports apps targeting "UAP 10.0". To verify whether "Microsoft Universal CRT Debug Runtime v10.0.14393.0" is compatible with "UAP 10.0.14393.0", contact the SDK author or see http://go.microsoft.com/fwlink/?LinkID=309181. 10>MakePri : error 0x80070002: Processing Resources failed with error: The system cannot find the file specified. 10>MakePRI : warning 0xdef00520: Invalid qualifier: INTELLISENSE-SETUP 10>MakePRI : error 0xdef00071: File C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\windows\solutions\Build\Output\x86\Debug\Org.WebRtc\Org.WebRtc.pri not found. 10>Done building project "appRTC_win_JS.Win10.jsproj" -- FAILED. 8>CSC : error CS0006: Metadata file 'C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\windows\solutions\Build\Output\x86\Debug\Org.WebRtc\Org.WebRtc.winmd' could not be found 11>------ Build started: Project: ChatterBox (Samples\ChatterBox\Client\ChatterBox), Configuration: Debug x86 ------ 9>CSC : error CS0006: Metadata file 'C:\Users\rmaheshwari\Git clones\ortclib-sdk\webrtc\windows\solutions\Build\Output\x86\Debug\Org.WebRtc\Org.WebRtc.winmd' could not be found 11>CSC : error CS0006: Metadata file 'C:\Users\rmaheshwari\Git clones\ortclib-sdk\common\windows\samples\ChatterBox\Output\ChatterBox.Background\bin\x86\Debug\ChatterBox.Background.winmd' could not be found ========== Build: 3 succeeded, 8 failed, 1 up-to-date, 0 skipped ==========

jamescadd commented 6 years ago

It seems like your clone could be incomplete - could you try a fresh clone and make sure to do --recursive? Is this on master? Also I would recommend a shorter path to work around the Windows default limit. I usually clone to c:\repos

rishvanjay commented 6 years ago

I tried a fresh clone and now I'm getting new errors. "The type or namespace name 'UnityPlayer' could not be found (are you missing a using directive or an assembly reference?)" This is for UnityPlayer, WinRTBridge, and AppCallbacks. How do I fix that?

Also, C:\Repos is a great advice. Thank you!

jamescadd commented 6 years ago

Sure thing! Sounds like you may not have "Windows Store .NET Scripting Backend" installed (part of the Unity install). Also can you check that Unity is installed at the default path C:\Program Files\Unity

rishvanjay commented 6 years ago

So I'm able to deploy PeerConnectionClient.Webrtc on my desktop and Hololens. How do I create a server and get them connected?

jamescadd commented 6 years ago

There's a signaling server available here: https://github.com/webrtc-uwp/PeerCC-Sample/tree/master/Server

Run it on a machine (not one of the clients you're using to make a call, this is known to not work) and make sure port 8888 is open in the firewall. On each client input the IP of your signaling server. On HoloLens, you'll have to use the Windows Device Portal to perform the text entry as I don't think the virtual keyboard is working. Click connect on each client, you should see them listed in the sample app. On HoloLens air tap the call button, call should then start. If you call from Desktop to HoloLens make sure to choose H.264 for the codec in settings first as that's hardware accelerated and hardcoded in this sample.

rishvanjay commented 6 years ago

I started the signalling server at my desktop and tried to connect my hololens to it but I keep getting "Failed to connect to server!" On my desktop I have the window which shows "Server listening on port 8888" How do I go about this?

Also, my desktop is connecting to the server properly. It seems like an issue only with hololens connecting to the server.

jamescadd commented 6 years ago

Can you provide the debug output from VS for the connection error on HoloLens? You likely need to check that your server IP was entered properly on HoloLens and that the device can see your desktop. Did you make sure to allow TCP/UDP port 8888 through the desktop firewall?

rishvanjay commented 6 years ago

I am able to make a connection but it is lagging a lot, and sometimes I'm unable to see the stream from Hololens on my desktop.

mehdikhadir commented 5 years ago

Hello, I am facing the same issue @rishvanjay faced, I end up with the following error in Visual Studio 2017 when building webrtc\windows\solutions\WebRTC.sln

Severity Code Description Project File Line Suppression State Error CS0006 Metadata file 'C:\ortclib-sdk-m62\webrtc\windows\solutions\Build\Output\Org.WebRtc.Uwp\Debug\x86\Org.WebRtc.winmd' could not be found PeerConnectionClientCore C:\ortclib-sdk-m62\common\windows\samples\PeerCC\ClientCore\CSC 1 Active

I had cloned the branch Mosa/20180320-peercc-unity and executed bin\prepare.bat successfully. I have Unity version 2018.2.13 installed at the standard location (C:\Program Files\Unity) and made sure to check IL2CPP and .NET backends when installing.

Any idea where that could come from? Did I miss a step?

Thanks in advance!

Mehdi

jamescadd commented 5 years ago

Hi @mehdikhadir - could you post the full VS output?

mehdikhadir commented 5 years ago

Hi @jamescadd, thanks for helping out! Here is the output I get from Visual Studio:

1>------ Build started: Project: WebRtc.Stats.Observer, Configuration: Debug Win32 ------ 1>Object reference not set to an instance of an object. 2>------ Build started: Project: WebRtc.UWP.Native.Builder, Configuration: Debug Win32 ------ 2>Object reference not set to an instance of an object. 2>Error: Object reference not set to an instance of an object. 3>------ Build started: Project: peerconnection_server, Configuration: Debug Win32 ------ 3>Object reference not set to an instance of an object. 3>Error: Object reference not set to an instance of an object. 4>------ Build started: Project: Org.WebRtc.Uwp, Configuration: Debug Win32 ------ 4>Object reference not set to an instance of an object. 5>------ Build started: Project: PeerConnectionClientCore, Configuration: Debug x86 ------ 5>CSC : error CS0006: Metadata file 'C:\ortclib-sdk-m62\webrtc\windows\solutions\Build\Output\Org.WebRtc.Uwp\Debug\x86\Org.WebRtc.winmd' could not be found 6>------ Build started: Project: PeerConnectionClient.WebRtc, Configuration: Debug x86 ------ 6>CSC : error CS0006: Metadata file 'C:\ortclib-sdk-m62\common\windows\samples\PeerCC\Output\PeerCC.Core\WebRtc\bin\x86\Debug\PeerConnectionClientCore.dll' could not be found ========== Build: 0 succeeded, 6 failed, 0 up-to-date, 0 skipped ==========

jamescadd commented 5 years ago

@mehdikhadir It may be related to this issue: In VS2017 go to Tools > Options > Projects and Solutions > General and uncheck “Allow parallel project initialization”.

mehdikhadir commented 5 years ago

Thanks for the suggestion @jamescadd, unfortunately this didn't change the output, I get the exact same logs. I restarted Visual Studio to make sure but it didn't change a thing

jamescadd commented 5 years ago

@mehdikhadir Ok, are you doing an x86/debug build? it's strange to see some of the projects listing Win32 there. Maybe do a clean clone (make sure it's recursive) and run bin\prepare.bat -logLevel 4 and post the output. The VS issue looks unusual to me.

mehdikhadir commented 5 years ago

Hi @jamescadd! Yes it is an x86/debug build. I just did a clean recursive clone and ran bin\prepare.bat -logLevel4. I attached the output as a txt file. I opened the solution and Visual Studio still wants to build using Win32. outputCleanClone.txt

jamescadd commented 5 years ago

@SergioOpenPeer could you take a look?