LadybirdBrowser / ancient-history

The Ladybird web browser
BSD 2-Clause "Simplified" License
1.62k stars 102 forks source link

Runtime error on WebContentView.cpp:615 #138

Closed blmayer closed 2 years ago

blmayer commented 2 years ago

After building latest commit, packaging and installing to /usr/... I have this runtime error:

execvp: No such file or directory
ladybird: /home/blmayer/aur/ladybird-git/src/ladybird/WebContentView.cpp:615: void WebContentView::create_client(): Assertion `false' failed.
QSocketNotifier: Invalid socket 10 and type 'Read', disabling...
WebContent process crashed!

The window loads but pages are not rendered.

Maybe the command DESTDIR="$pkgdir" ninja install -C Build is missing a library.

ADKaster commented 2 years ago

The file it's looking for is bin/WebContent, which is the process that actually loads the web content and renders it back to the GUI application in a shared memory bitmap.

It looks like you built from the Arch AUR, did you use the extra steps I described in https://aur.archlinux.org/packages/ladybird-git#comment-891369 ?

Those steps created an install tree that looked more or less correct when I built them in a docker container, but I didn't try them in an arch desktop environment.

blmayer commented 2 years ago

Yes I did.

ADKaster commented 2 years ago

I built from this exact PKGBUILD (NOT the PKGBUILD that's actually in the AUR) that I left a link to in the comment on the AUR package above in a Manjaro Plasma VMand it worked fine other than the fonts being messed up. It looks like makepkg trips over this file: https://github.com/SerenityOS/serenity/blob/master/Base/res/fonts/CJKBi%C3%A1ngRegular36.font. I'm not sure what the procedure to update the AUR is other than leaving a comment and hoping the maintainer sees it, but the PKGBUILD that is currently in the repos there is broken, as you experienced. (edit: I just realized you are said maintainer, hi!)

Screenshot from 2022-12-04 13-48-57

As of today, the AUR PKGBUILD doesn't use ninja install at all, it does some manual copy steps that I pushed a patch for here in this repo months ago to make obsolete. https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=ladybird-git&id=a9eb3d840c166ca0d4ca53bc93f15877c7309cfe

ADKaster commented 2 years ago

Is it possible that some other package has a conflict with /usr/bin/WebContent ? We didn't exactly name the applications in a way that would play nice with the rest of the linux ecosystem in the same way the liblagom-* libraries are.

ADKaster commented 2 years ago

As long as the ninja install roughly contains the following files it should work? latest commits of both serenity and ladybird would generally be required, they must be in lockstep:

https://gist.github.com/ADKaster/ffc5da20397d0be4f994478617018dc9

blmayer commented 2 years ago

I was able to make it run correctly now. Thank you very much! The issue was my ladybird.sh file being in the wrong place. No the PKGBUILD file looks just like yours.

About the font issue: during the install I get this error:

: Can't translate pathname 'usr/share/res/fonts/CJKBiángRegular36.font' to UTF-8

I think the character á is not in a expected encoding. I will investigate that later.