Kompilering Oscam til Android
524
Det har været et stykke tid siden mit sidste blogindlæg nyttig, men livet er ikke det samme, der var før.
Alligevel, I dag har jeg præsentere Dem for en ny lærebog med detaljerede instruktioner om, hvordan, hvordan man opbygger Oscam til din Android kasse (for eksempel, WeTeK spil).
Officiel dokumentation Oscam indeholder nogle oplysninger om, hvordan man kompilerer det ved hjælp af NDK toolchain, men det er forældet, og man kan ikke stole på enhed, opererer på Lollipop (5.0+), som de binære filer vil ikke arbejde, fordi de ikke er uafhængige eksekverbare filer (PIE), og forklarer ikke, som cross-kompilering og installation af OpenSSL.
Jeg vil vise dig, hvordan man kompilerer en god statisk binær, at skulle arbejde på en Android-enhed på grundlag af armen.
Først og fremmest, du har brug for en Linux-maskine, Jeg bruger Linux Mint, som er baseret på Ubuntu, og alle de instruktioner er til Ubuntu miljøer.
Hvis du ikke har linux miljø, installere Ubuntu virtuel maskine.
Installer de krævede pakker.
sudo apt-get update
sudo apt-get install subversion
Næste du nødt til at downloade den seneste version af Linux 64-bit (x86) Android NDK, som du kan finde på https://developer.android.com/ndk/downloads/index.html
På tidspunktet for dette skrives, den seneste stabile version er r21.
Uddrag filen NDK i din hjemmemappe og cd-rom i mappen build / værktøjer, så vi kan bygge vores kæde af værktøjer til cross-kompilering.
cd ~/android-ndk-r21/build/tools
export TOOLCHAIN=~/android-toolchain
./make_standalone_toolchain.py --arch arm --api 24 --install-dir $TOOLCHAIN
Denne kommando tager et par sekunder for at starte, og det bør skabe et sæt af værktøjer android i din hjemmemappe.
Før cross-kompilering OScam hjælp af kæden værktøj, vi har brug for at kompilere OpenSSL
Download, ekstrakt og build OpenSSL:
cd ~
wget http://www.openssl.org/source/openssl-1.1.1d.tar.gz
tar -xf openssl-1.1.1d.tar.gz
cd openssl-1.1.1d
export CC=$TOOLCHAIN/bin/arm-linux-androideabi-gcc
export RANLIB=$TOOLCHAIN/bin/arm-linux-androideabi-ranlib
./Configure --prefix=$TOOLCHAIN/sysroot/usr android
make
make install_sw
Lad os nu kontrollere oscam svn og oprette samling.
cd ~
svn checkout http://www.streamboard.tv/svn/oscam/trunk oscam-svn
cd oscam-svn
./config.sh --enable WEBIF WITH_SSL
Nu kommer den del, du har ventet på, cross-kompilering Oscam til Android.
make static EXTRA_FLAGS="-pie" LIB_RT= LIB_PTHREAD= CROSS=$TOOLCHAIN/bin/arm-linux-androideabi-
Hvis alt fungerede, så skal du have en god fordeling i den binære fil mappen oscam-svn.
jeg ved, hvad du synes :
– “hvad fanden, dette er ikke AIC. Hvordan kan jeg oprette og køre det på din enhed?”.
Godt, derefter, vi lige gjorde, Det har været at udarbejde sin egen C-kode til at køre på Android miljø.
APK – denne pakke, som indeholder byte kode (kompileret Java-kode) og ressourcer, og som løber i den virtuelle maskine android java (der kan være Dalvik eller ART, afhængigt af din version af Android).
Vi vil have vores egen binær fil som en ressource, fjerne det på plads, hvor den kan dannes (Det virker ikke på SD-kort), gøre det eksekverbar og køre det.
Men det vil være for den næste lektion.