-
-
Save martin12333/cd01e12fb150ad51b6fdec8cf3816f2c to your computer and use it in GitHub Desktop.
Steps to compile the Lynx web browser to Web Assembly
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Sources used in figuring this out: | |
# | |
# - https://developer.mozilla.org/en-US/docs/WebAssembly/C_to_wasm | |
# - https://emscripten.org/docs/compiling/Building-Projects.html#building-projects | |
# Set up Emscripten SDK | |
git clone https://github.com/emscripten-core/emsdk.git | |
cd emsdk/ | |
./emsdk install latest | |
./emsdk activate latest | |
source ./emsdk_env.sh | |
# Test compile so we know EMScripten works | |
cd - | |
wget https://raw.githubusercontent.com/emscripten-core/emscripten/master/src/shell_minimal.html | |
wget https://gist.githubusercontent.com/Potherca/89a4ce1f018c7d39a6fa0320673c8d57/raw/hello3.c | |
emcc -o hello3.html hello3.c -O3 -s WASM=1 --shell-file shell_minimal.html -s NO_EXIT_RUNTIME=1 -s "EXTRA_EXPORTED_RUNTIME_METHODS=['ccall']" | |
# Compile Lynx so we know that works | |
sudo touch /usr/local/etc/lynx.cfg && sudo chown $USER /usr/local/etc/lynx.cfg | |
sudo touch /usr/local/etc/lynx.lss && sudo chown $USER /usr/local/etc/lynx.lss | |
wget https://invisible-mirror.net/archives/lynx/tarballs/lynx2.9.0dev.6.zip | |
unzip lynx2.9.0dev.6.zip | |
cd ../lynx2.9.0dev.6/ | |
./configure --with-ssl | |
make | |
./lynx https://invisible-mirror.net/archives/lynx/tarballs/ | |
# Compile Lynx with EMScripten | |
emconfigure ./configure --with-ssl | |
emmake make |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment