====== 3.4 Linux Kompilacija (WSL) ======
Ovaj vodič pokazuje kako kompilirati OpenSSL pod Linuxom u WSL2.
----
===== Kada Mi Treba Linux Kompilacija? =====
^ Aplikacija ^ Linux kompilacija potrebna? ^
| Docker Container | **Da** |
| Linux Server | **Da** |
| L4Re Microkernel | **Da** (Cross-kompilacija za aarch64) |
| .NET na Windowsu | Ne (koristite Windows kompilaciju) |
| WASM/Blazor | Zasebno (vidi WASM kompilaciju) |
----
===== Preduvjeti =====
* ☑ WSL2 s Ubuntu 24.04 LTS (preporučeno) ili Fedora
* ☑ Instalirani build alati
* ☑ Za aarch64: Instaliran cross-kompilator
→ [[.:vorbereitung:wsl-einrichten|Postavljanje WSL-a]]
----
===== Koraci Kompilacije =====
==== Korak 1: Instalirajte Build Ovisnosti ====
**Ubuntu 24.04 (preporučeno):**
sudo apt-get update
sudo apt-get install -y \
build-essential \
perl \
git \
wget \
file
==== Korak 2: Kopirajte Izvore u Linux Datotečni Sustav ====
**VAŽNO: NTFS Symlink Problem**
Kompilacija izravno na Windows datotečnom sustavu (''/mnt/d/...'') ne uspijeva jer NTFS ne podržava Linux symlinkove.
**Rješenje:** Uvijek kopirajte izvore u Linux datotečni sustav (''/opt/...'')!
# Stvorite build direktorij
sudo mkdir -p /opt/openssl-build
sudo chown $(id -u):$(id -g) /opt/openssl-build
# Kopirajte izvore (s tar-om za potpunu kopiju)
cd /mnt/d/Projects/openssl-3.6.0/src
tar cf - . | tar xf - -C /opt/openssl-build
==== Korak 3: Konfigurirajte (x86_64) ====
cd /opt/openssl-build
# Standardna konfiguracija
./Configure linux-x86_64 \
--prefix=/opt/openssl-3.6 \
--openssldir=/opt/openssl-3.6/ssl \
shared
==== Korak 4: Kompilirajte ====
make -j$(nproc)
==== Korak 5: Instalirajte ====
sudo make install
----
===== Rezultat =====
/opt/openssl-3.6/
├── bin/
│ └── openssl # CLI Alat
├── include/
│ └── openssl/ # Header datoteke za FFI
├── lib64/
│ ├── libcrypto.so.3 # ~7.4 MB - Crypto biblioteka
│ ├── libssl.so.3 # ~1.3 MB - SSL/TLS biblioteka
│ └── ossl-modules/
│ └── fips.so # ~3.2 MB - FIPS Provider
└── ssl/
└── openssl.cnf
----
===== Testiranje =====
# Provjerite verziju
/opt/openssl-3.6/bin/openssl version -a
# Provjerite Post-kvantne algoritme
/opt/openssl-3.6/bin/openssl list -signature-algorithms | grep -i mldsa
/opt/openssl-3.6/bin/openssl list -kem-algorithms | grep -i mlkem
----
===== Nastavite na =====
* [[.:vorbereitung:wsl-einrichten|Postavljanje WSL-a]]
* [[.:testen:start|4. Testiranje]]
* [[.:build:start|Povratak na pregled kompilacije]]
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//