Gurkengewuerz / cefgo

Go bindings for the Chromium Embedded Framework (CEF)
GNU General Public License v3.0
24 stars 6 forks source link

Build Issue - Couldn't mmap icu data file #1

Open ryanerwin opened 4 years ago

ryanerwin commented 4 years ago

Hello!

I found your cefgo project via your post on the go-ultralight issue tracker https://github.com/maneac/go-ultralight/issues/9#issuecomment-674611337

I was doing some testing with Ultralight and noticed that some very simple Vue.js wasn't even working... Curious to see how CEF compares... Definitely excellent that it's actually open source!

I am trying to build the example on Ubuntu 20.04, but I'm getting a core dump...

I was able to get the release to build, though note the Readme.md says to use examples/main.go but I think it's updated to examples/mainthead/main.go.

go clean -cache -testcache && CGO_ENABLED=1 go build -o Release/test examples/mainthread/main.go

Once it builds though, I'm unable to get the test app to launch:

❯ ./test
[example app]fillMainArgs [./test] 1
[example app]ExecuteProcess
[example app]Initialize Settings
[example app]ResourcesDirPath= /home/ryan/Dev/cefgo/Release
[example app]LocalesDirPath= /home/ryan/Dev/cefgo/Release/locales
[example app]RemoteDebuggingPort= 6696
[example app]IgnoreCertificateErrors= false
[example app]CommandLineArgsDisabled= false
[example app]fillMainArgs [./test] 1
init_gui
cef_initialize
on_before_command_line_processing
on_register_custom_schemes
[0904/203439.702504:ERROR:icu_util.cc(247)] Couldn't mmap icu data file
zsh: trace trap (core dumped)  ./test

I'm using:

cef_binary_85.3.1+g1306235+chromium-85.0.4183.83_linux64_minimal
go version go1.13.8 linux/amd64
Ubuntu 20.04.1 LTS (Focal Fossa)
Gurkengewuerz commented 4 years ago

Could you please test against CEF 83.3.9+ged43e55+chromium-83.0.4103.61 as described in the readme? Maybe there was some update in the api.

ryanerwin commented 4 years ago

To actually use the Filter feature on the CEF page, just enter 83.3.9 and the builds of CEF 83.3.9+ged43e55+chromium-83.0.4103.61 can be located.

image

Unfortunately for me though, after downloading CEF 83.3.9+ged43e55+chromium-83.0.4103.61 I still get the exact same error as I did with CEF 85.3.1.

To make certain, I deleted the entire cefgo checkout, checked it out again, and copied the Release, include, and Resources from CEF 83.3.9, but I still get the couldn't mmap icu data file and core dump.

❯ cd Release
❯ ./test
[example app]fillMainArgs [./test] 1
[example app]ExecuteProcess
[example app]Initialize Settings
[example app]ResourcesDirPath= /home/ryan/Dev/cefgo/Release
[example app]LocalesDirPath= /home/ryan/Dev/cefgo/Release/locales
[example app]RemoteDebuggingPort= 6696
[example app]IgnoreCertificateErrors= false
[example app]CommandLineArgsDisabled= false
[example app]fillMainArgs [./test] 1
init_gui
cef_initialize
on_before_command_line_processing
on_register_custom_schemes
[0905/070214.823404:ERROR:icu_util.cc(247)] Couldn't mmap icu data file
zsh: trace trap (core dumped)  ./test
Gurkengewuerz commented 4 years ago

I can look at it in a few days. I am currently in examination phase and was sick the last days. Therefore I could and can find no time for the project. Sorry for now but i try my best!

amansx commented 4 years ago

I can help take a look, I have some time on my hand, I had the same issue on mac and resolved it by fixing the bundle

dminGod commented 3 years ago

I had the same issue. I think the problem is that in the newer version of CEF ( 89.0.18 ) the Release/locales folder does not exist -- the locales folder is actually part of the Resources -- I just coped all the contents of the Resources folder to the Releases folder as well - did not get that error after that.