0

I've been following this very comprehensive guide to enabling proprietary codecs in CefSharp. Unfortunately I've hit a snag at step 16. I've used automate-git.py to build the cef redistributables, and copied them into the cef-binary repo. However, when I try to build cef-binary using build.ps1, I'm getting the error below, regarding libcef_dll_wrapper.vcxproj not being found. It's true - that file does not exist. All I have in the directory it's looking for that file is the following: cef_binary_distribution folder

Should it exist? Or is the build script somehow wrong? Have I messed something up during automate-git.py?

The output of the cef-binary build:

.\build.ps1 vs2013                                                                                                         

Bootstrapping                                                                                                                

Starting to build targeting toolchain v120                                                                                   

Targeting v120 using configuration Debug on platform x86                                                                     

Get-Content : Cannot find path                                                                                               
'D:\git\Chromium\cef-binary\cef_binary_3.2526.1373.gb660893_windows32\libcef_dll\libcef_dll_wrapper.vcxproj' because it does not exist.                                                                                                              
At D:\git\Chromium\cef-binary\build.ps1:224 char:6                                                                           
+     (Get-Content $CefProject) | Foreach-Object {$_ -replace "<RuntimeLibrary>Mul ...                                       
+      ~~~~~~~~~~~~~~~~~~~~~~~                                                                                               
+ CategoryInfo          : ObjectNotFound: (D:\git\Chromium...wrapper.vcxproj:String) [Get-Content], ItemNotFoundException: PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand                                   

Get-Content : Cannot find path                                                                                               
'D:\git\Chromium\cef-binary\cef_binary_3.2526.1373.gb660893_windows32\libcef_dll\libcef_dll_wrapper.vcxproj' because it does not exist.                                                                                                              
At D:\git\Chromium\cef-binary\build.ps1:225 char:6                                                                           
+     (Get-Content $CefProject) | Foreach-Object {$_ -replace "<RuntimeLibrary>Mul ...                                       
+      ~~~~~~~~~~~~~~~~~~~~~~~                                                                                               
+ CategoryInfo          : ObjectNotFound: (D:\git\Chromium...wrapper.vcxproj:String) [Get-Content], ItemNotFoundException                                                                                                                        
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand                                   

True                                                                                                                         
Microsoft (R) Build Engine version 12.0.40629.0                                                                              
[Microsoft .NET Framework, version 4.0.30319.42000]                                                                          
Copyright (C) Microsoft Corporation. All rights reserved.                  

Any help gratefully received!

Also asked on the CEF forum and on the CefSharp google group (not enough reputation to add another link)

Community
  • 1
  • 1
cassh
  • 1
  • 1
  • Please provide links to all the cross posts, I understand your keen to resolve this, posting on every possible place is not necessary. Is there a reason you didn't ask the author of the guide your following? Seems like that would have been a logical course of action. – amaitland Apr 06 '16 at 22:02
  • I don't have sufficient reputation to comment on his post, and asking a question as an answer to the original question seems both silly and unlikely to get a response. I've also emailed the email listed on his github (which made me pretty uncomfortable, but as you say, I am keen to resolve this). So, yes, I've asked him. If by the cross-posts, you mean the post on the cef forum, and the post on the CefSharp group, sure, I can include the links. I've since been informed that the cef forum was an inappropriate place to ask, and that the CefSharp group is not very active, hence the post here. – cassh Apr 06 '16 at 22:40
  • Posting here is fine if you cannot comment, leaving a trail all over the internet isn't particularly helpful. – amaitland Apr 06 '16 at 22:44
  • https://github.com/cefsharp/cef-binary/wiki – amaitland Apr 06 '16 at 22:45
  • No change, I'm afraid. automate-git.py completes with no errors. There's just no libcef_dll_wrapper.vcxproj in the output. There may be other things missing too, not sure. I've posted the CEFSharp automate-git.py script output here: https://gist.github.com/anonymous/0085a1ab111eee1321ca69f7436399bc – cassh Apr 07 '16 at 23:37
  • You need `cmake` to generate `libcef_dll_wrapper.vcxproj` (this is generated by `build.ps1`). – amaitland Apr 07 '16 at 23:56
  • cmake was on my path. But I've just realised that I'm stupid - there's a line in the guide that has words to the effect of "ignore any errors about 64 bit if you're only building 32 bit". So, I ignored some 64 bit errors. That was a mistake! As soon as I "fixed" the errors by building and copying over the 64 bit distro, all project files generated just fine. Sigh. Thanks for your help. – cassh Apr 08 '16 at 00:05
  • Cool, well nows your chance to answer your own `stackoverflow` question, fill in any missing pieces, add some helpful tips for anyone else. – amaitland Apr 08 '16 at 01:14

1 Answers1

0

The answer turned out to be frustratingly simple.

Firstly, ensure cmake is on your path, as advised by amaitland above. Secondly, to avoid any further issues, ensure you've copied over both the 64 bit and 32 bit cef binaries.

cassh
  • 1
  • 1