I'm trying to build WebKitForEmbedded https://wpewebkit.org/ but this is disaster. I've created another post about this issue (https://stackoverflow.com/questions/51578580/wpe-build-installed-directly-on-raspbian-image) but there are a lot of missing dependencies and problems with compiling this project directly on Stretch. According to articles WPE has HW support and works quite smoothly. I am still NOT able to run this application on my RPi (I've resolved about 8 config/compilation problems and I got stuck at ninth).

I've tried:

  • Chromium
  • Epiphany
  • Kweb

Animation in HTML5 canvas element works extremely slowly. I need to run application to display some animation/info and video. My question is:

  • Is WPE intended to be built directly on Raspbian? I came across on examples mostly with Buildroot or Yocto. The only native example (which fails) is here. Has anyone made it?
  • Is there any other browser with HW support/HTML5 (canvas) element?
  • "I even don't need to run X-server, just web browser with content." -> Short of a substitute for X (e.g. Wayland, which I think is still experimental on the Pi), this is non optional. No Xorg server, no web browser.
    – goldilocks
    Aug 5, 2018 at 12:21
  • @goldilocks, I assume you are more familiar with this topic. I wrote this sentence because of project made by Resin. We can read: "It renders directly to the framebuffer, without running on X11 or Wayland" forums.resin.io/t/…
    – sticker
    Aug 8, 2018 at 9:18
  • All apologies -- I wasn't aware of that. There are various GUI programs available for the framebuffer (I notice glancing over that there is another framebuffer based browser, NetSurf) but they are unusual (i.e., you can't use just anything, including the commonplace browsers). The normal approach to a kiosk is to run just the X server with no desktop environment, and one application. There's no big advantage to using the framebuffer on a device with enough RAM such as the Pi.
    – goldilocks
    Aug 8, 2018 at 13:28

2 Answers 2


I came across on examples mostly with Buildroot or Yocto.

These are still fundamentally linux based. Possibly you could use the executables from there although it might take some finagling.

If those are docker images, I think you will need to start off with a base system, but you can run ldd on the executables to find their shared library dependencies (if you are really lucky, the browser is built with static linking and there won't be any).

You can then copy the executables libraries out of the Yocto or whatever system, place them in a dedicated directory and either add it to the default linker paths by leaving a file in /etc/ld.so.conf.d, or (probably better) running the browser with LD_LIBRARY_PATH set. This latter will avoid the possibility of messing up linking generally (which I think is unlikely, but...). First check using ldd to see if your system already provides some of the dependencies.


I've had some success building an image for the Raspberry Pi using Buildroot. WPE WebKit runs very smooth on my Pi3+.

Building WPE WebKit with Buildroot goes like this:

apt-get update
apt-get install git build-essential unzip bc mtools -y
git clone https://github.com/WebPlatformForEmbedded/buildroot.git
cd buildroot
make menuconfig

Now follow the instructions here to configure it so it creates an image: https://github.com/WebPlatformForEmbedded/WPEWebKit/issues/500#issuecomment-435590466

Continue with


Wait a few hours and you should have your image file read under buildroot/output/images/sdcard.img

Here's a video of my results: https://www.youtube.com/watch?v=_KsCrg0kyac

However, I would still like to see a binary for Raspbian, but nobody seems to be able to build one. Here's somebody who tried, but stopped half way: https://www.j1nx.nl/ict-matters/compiling-wpe-webkit-for-the-raspberrypi/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.