hlwhl / webview_cef

WebView for Flutter Desktop Apps using CEF(Chromium Embedded Framework) [Work in Progress]
Apache License 2.0
188 stars 54 forks source link

Fix Linux builds and upgrade CEF #148

Closed cadivus closed 4 weeks ago

cadivus commented 2 months ago

Hi!

On Ubuntu 24.04, builds fail (see build_errors.txt).

This is my toolchain:

$ gcc --version
gcc (Ubuntu 12.3.0-17ubuntu1) 12.3.0
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ g++ --version
g++ (Ubuntu 12.3.0-17ubuntu1) 12.3.0
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ clang --version
Ubuntu clang version 18.1.3 (1ubuntu1)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin

$ cmake --version
cmake version 3.28.3

CMake suite maintained and supported by Kitware (kitware.com/cmake).

This PR fixes that and upgrades CEF by using offical builds (https://github.com/chromiumembedded/cef?tab=readme-ov-file#quick-links).

SinyimZhi commented 1 month ago

I will check it in the next few day.

cadivus commented 1 month ago

@SinyimZhi I fixed the arm64 builds too, I tested it on Ubuntu 24.04 aarch64 (VMware on Macbook M1) and x86_64.

This is the Flutter build I used in the arm64 VM since there are no official Linux builds for arm64:
https://github.com/zhzhzhy/Flutter-SDK-ARM64

SinyimZhi commented 1 month ago

And i didn't quite understand what you meant "since there are no official Linux builds for arm64"? I first started developing this plugin to support Linux by verifying and developing it on an arm64 environment.. My previous project mainly ran on the arm64 version on Linux, and we did indeed develop it on the arm64 environment.

cadivus commented 1 month ago

And i didn't quite understand what you meant "since there are no official Linux builds for arm64"? I first started developing this plugin to support Linux by verifying and developing it on an arm64 environment.. My previous project mainly ran on the arm64 version on Linux, and we did indeed develop it on the arm64 environment.

In the SDK archive, I just see x64 for Linux:
Screenshot_20241022_215152

(https://docs.flutter.dev/release/archive)

Maybe I missed something. The VM on my M1 Macbook was the first time using Linux on arm64, I just did it for testing my changes and usually don't target it.

cadivus commented 1 month ago

@SinyimZhi I hope I answered everything. Please check again.

SinyimZhi commented 1 month ago

And i didn't quite understand what you meant "since there are no official Linux builds for arm64"? I first started developing this plugin to support Linux by verifying and developing it on an arm64 environment.. My previous project mainly ran on the arm64 version on Linux, and we did indeed develop it on the arm64 environment.

In the SDK archive, I just see x64 for Linux: Screenshot_20241022_215152

(https://docs.flutter.dev/release/archive)

Maybe I missed something. The VM on my M1 Macbook was the first time using Linux on arm64, I just did it for testing my changes and usually don't target it.

Juset download the offical sdk and run flutter doctor on arm64 enviroment, flutter sdk can work as well as amd64.

cadivus commented 1 month ago

Juset download the offical sdk and run flutter doctor on arm64 enviroment, flutter sdk can work as well as amd64.

That's the first thing I tried, didn't work. But I think it doesn't matter here.

cadivus commented 1 month ago

@SinyimZhi Please have a look again.

SinyimZhi commented 4 weeks ago

@SinyimZhi Please have a look again.

Great work, thank you for your contribution. If you are interested, you are welcome to participate in more of this project.

cadivus commented 4 weeks ago

@SinyimZhi Thanks for Integrating my code, I probably will. Could you please trigger a release to pub.dev?

cadivus commented 4 weeks ago

@SinyimZhi Thanks for Integrating my code, I probably will. Could you please trigger a release to pub.dev?

@SinyimZhi You can wait with that, one of the other PRs you merged broke Linux again... I'm on it incl a Github workflow checking Linux builds.

cadivus commented 4 weeks ago

@SinyimZhi I fixed these errors here:
https://github.com/hlwhl/webview_cef/pull/157

After merging that, it would be nice if you could push a new version on pub.dev