-
Notifications
You must be signed in to change notification settings - Fork 277
running cefglue.winapi.demo .net core #74
Comments
@meareindel thanks for detailed description of the issues. Yes, they are all related to #66.
Please let @FrankPfattheicher and I know what your findings are as that will help us improve on Chromely running on Linux. Thanks. |
@mattkol thanks for quick answer.
|
@meareindel do you want to give my sample https://github.com/FrankPfattheicher/stonehenge.Chromely a try? I tested it on Windows using VS2017 .NET 4.7.1, and .NET core 2.1. |
@meareindel you are right on item # 2. Though it is working as planned, the OS version value was not set in props file. We are taking a new direction on this, this is what @FrankPfattheicher code changes will fix. Thanks for pointing all these out. |
Thanks, guys, will see later that. It's not the critical point though comparing to CEF crash in linux. Will investigate that first. |
@mattkol, how do version.g.cs get generated? I want to try to bind to one of later CEF to see if it makes any difference to run under linux. |
got #34 on clean latest Debian 9. Is it still actual - I mean, is it still not truly crossplatform? |
@meareindel We are still working on "truly crossplatform"...
Please look at my example at |
@meareindel we do not have control over how CefGlue files are generated. This was a choice between using an external dependency - https://www.nuget.org/packages/Chromely.Unofficial.CefGlue.NetStd/ and embedding the code. The later was chosen. So any code in the folder CefGlue is always going to be as-is. It is a NetStandard port of CefGlue. |
@mattkol why not to use package reference? |
@FrankPfattheicher thanks, your examples showed the way, I've managed to publish and run chromely demo both on win and debian. There are some error messages in console though: [0305/114403.664234:ERROR:gl_implementation.cc(292)] Failed to load /home/user/publish/swiftshader/libGLESv2.so: /home/user/publish/swiftshader/libGLESv2.so: cannot open shared object file: no such file or directory [0305/114403.668165:ERROR:viz_main_impl.cc(201)] Exiting GPU process due to errors during initialization but demo works regardless of it. I've moved libGLESv2.so and also libGLES.so to 'swiftshader' subfolder and messages gone, but no changes in demo itself. I think issue could be closed now. |
@meareindel we could use the package reference. Chromely was started that way. The reason I did that was that the package was created by us, so why an extra dependency that WILL not change. If this is open to package reference, then developers may add references that are not supported - CefGlue is strict on versioning. Also my thought is this way, if there will be a change specifically for Chromely - it can be done without making a change to the published package that are used by non-Chromely projects. CefGlue is not the only embedded code - the container - SimpleContainer, and json mapper LitJson are embedded. Having said that, nothing here is written in stone, if there is need to revert that, it will be done. Thanks. |
but demo works regardless of it. I've moved libGLESv2.so and also libGLES.so to 'swiftshader' subfolder and messages gone, but no changes in demo itself. @meareindel good catch there. So when you did that, did you leave copies of libGLESv2.so and libGLES.so in the main folder? |
@mattkol , yes I did. Later I've also noticed readme.txt in cef binaries bundle where 'libEGL'-stuff are described. As far as I understood, neither of swiftshader/ or root folder libEGL-binaries are strictly needed - these are just for WebGL. Except that you doing some WebGL-stuff in your app. But I did not get a try yet to remove these. It would also be nice to add linux cef binaries symbol stripping into build/binaries download pipeline (see this) so these would be just around 200Mb instead of 600Mb (and even around 10Mb less if libEGL would go away). I don't know yet if it is possible to run linux strip utility in windows though. There are also could be some other ways to reduce binaries size but I've not managed to get to cef-forum (https://magpcss.org) where these are supposed to be described - I have ERR_CONNECTION_RESET there for some reason. |
@meareindel so may be we should look at enabling/disabling WebGL. Good info on Linux cef binaries size reduction. I looked at it earlier but I felt developers should decide if that s the route they want to take, but we will see how easy it can be to do that. May be @FrankPfattheicher is already looking at that too. Thanks. |
Created a User Story so this will not be lost: |
@meareindel if you want to deploy smaller packages look at my loader. With that you don't need to deploy CEF at all. It is downloaded and installed on the first run. |
Hi,
Perhaps it is related with #66 and new release will fix these, I would like to describe some problems I've faced with:
1.1) x86 configuration just fails to run
1.2) x64 configuration opens window with white background and there is lot of messages in console like that (perhaps it's because there was some changes in dotnet 2.2):
2.1) CEF binaries does not get copied to publish folder (not all of them). It is needed to manually copy them to publish folder from build folder
2.2) Even if I publish with -r linux-64 CEF binaries still get win-platform downloaded. It is needed to manually download linux-platform binaries to publish folder as described at CefGlue Application Layout
3.1) Runs ok in Windows 10 1809 (-r win-x64)
3.2) Fails to run in Linux (AstraLinux SE/Debian 9 Stretch; -r linux-64): segmentation fault error, dmesg says that:
Any thoughts? Perhaps I am missing something...
The text was updated successfully, but these errors were encountered: