====== 1.3 Emscripten SDK ====== Emscripten je kompilator koji kompilira C/C++ u WebAssembly (WASM). ---- ===== Što je Emscripten? ===== **Emscripten** prevodi: * C/C++ kod → WebAssembly * Sistemske API-je → JavaScript ekvivalente * OpenGL → WebGL **Zašto nam treba Emscripten?** Za WASM kompilaciju OpenSSL-a koja radi u Blazor WebAssembly. ---- ===== Preduvjeti ===== * ☑ [[.:wsl-einrichten|WSL2 instaliran]] * ☑ Git dostupan ---- ===== Instalacija u WSL-u ===== ==== Korak 1: Otvorite WSL ==== wsl ==== Korak 2: Klonirajte Emscripten SDK ==== # U opt direktorij (sistemski) cd /opt # Klonirajte kao root sudo git clone https://github.com/emscripten-core/emsdk.git sudo chown -R $USER:$USER /opt/emsdk ==== Korak 3: Instalirajte najnoviju verziju ==== cd /opt/emsdk # Instalirajte najnoviju stabilnu verziju ./emsdk install latest # Aktivirajte ./emsdk activate latest ==== Korak 4: Postavite varijable okruženja ==== **Privremeno (samo ova sesija):** source /opt/emsdk/emsdk_env.sh **Trajno (u .bashrc):** echo 'source /opt/emsdk/emsdk_env.sh' >> ~/.bashrc ---- ===== Provjera ===== # Emscripten Kompilator emcc --version Očekivani izlaz: emcc (Emscripten gcc/clang-like replacement) 3.1.xx ---- ===== Za OpenSSL Kompilaciju ===== Za WASM kompilaciju OpenSSL-a koriste se ovi Emscripten alati: | Alat | Uporaba | |------|---------| | ''emcc'' | C kompilator (zamjenjuje gcc) | | ''emar'' | Archiver (zamjenjuje ar) | | ''emranlib'' | Ranlib (zamjenjuje ranlib) | | ''emconfigure'' | Wrapper za ./Configure | | ''emmake'' | Wrapper za make | ---- ===== Nastavite na ===== * [[.:build:wasm-blazor|WASM/Blazor kompilacija]] * [[.:vorbereitung:start|Povratak na pripremu]] ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//