Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Pull request Compare This branch is 17 commits ahead of dattaz:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
nbproject
.gitignore
Dockerfile
Dockerfile-1.38.28
Makefile
README.md
a.out.js
a.out.wasm
a.out.wasm.map
a.out.wast
demo_file_api.cpp
index.html
patch_icu_for_emscripten.patch
patch_libzim_for_emscripten.patch
postjs_file_api.js
prejs_file_api.js

README.md

Prototype of libzim in Webassembly

Demo at https://mossroy.github.io/libzim_wasm/

It uses WORKERFS as FS with emscripten and run in a web worker, file object is mount before run, and name is passed as argument.

Steps to recompile manually

sudo apt install ninja-build meson pkg-config python3 autopoint libtool autoconf
sudo apt install zlib1g-dev libicu-dev libxapian-dev liblzma-dev
  • activate emscripten environment variables with something like source ./emsdk_env.sh
  • run make

Steps to recompile with Docker

While being at the root of this repository :

sudo docker build -t "docker-emscripten-libzim:v1" .
  • Run the build with :
sudo docker run --rm -v $(pwd):/src -t docker-emscripten-libzim:v1 make

(please note that, in this case, the generated files will be owned by root after compiling, you might need to chown them afterwards)

You can’t perform that action at this time.