Díky moc, potřeboval bych rozchodit OSCAM se Smargo Smartreader čtečkou a k tomu je potřeba ten oscam přeložit pomocí
make USE_LIBUSB=1 bez toho to bohužel nedetekuje čtečku v USB.
Kompilace OSCAMu pro Turris (OpenWrt)
Neprve je nutné na nějaký počítač instalovat 32bit linux debian v aktuální verzi. Doporučuji skutečně 32bit protože toolchain, který si vytvoříme a přes který probíhá překlad ze zdrojových kódů do spustitelného binárního souboru je přeložen pro 32bit linux a pokud se jej pokusíte spustit na 64bitové verzi tak se to nezdaří a systém se bude tvářit, že spustitelné soubory např. gcc vůbec neexistují. Po čerstvé instalaci je potřeba doinstalovat přes aplikaci správce balíků další potřebné komponenty jako
gcc, gcc++, ncurses, make, automake, svn, git, openssl, a případně další o tom jaké se dozvíte v průběhu konfigurace pomocí autoconf a ./configure, v takovém případě pomůže spustit správce balíčku debianu a po vyhledání chybějícího balíčku dle názvu potvrdit jeho instalaci a znovu spustit ./configure
Pokud máme připraveno tak spustíme terminál, přepneme se do home adresáře např. cd /home/uživatel/ a spustíme svn následovně :
svn checkout
http://www.streamboard.tv/svn/oscam/trunk oscam-turris
nebo určitou verzi Oscamu
svn checkout
http://www.streamboard.tv/svn/oscam/tags/1.10 oscam-1.10
Dále si budeme muset přeložit toolchain pro kompilaci turrisu, který obsahuje gcc a další nástroje pro cílovou platformu powerpc, vlastní překlad toolchainu může trvat až několik hodin dle výkonnosti počítače na kterém překlad provádíte.
mkdir turris
cd turris/
export TURRIS=$PWD
git clone --depth 1
https://gitlab.labs.nic.cz/turris/openwrt.gitcd openwrt
cp -f configs/turris .config
make defconfig
Poznámka: máte-li vícejádrový procesor, můžete si zapnout kompilaci na více jádrech pomocí "-j<počet_jader>" - tedy make -j4 pro kompilaci ve čtyřech vláknech najednou.
make tools/install
make toolchain/install
make –j4 tools/install
make -j4 toolchain/install
Dále pro zprovoznění USB čtečky Smargo Smartreader budeme potřebovat stáhnout z
http://www.libusb.org/wiki/libusb-1.0 ještě knihovnu libusb následovně :
git clone git://git.libusb.org/libusb.git
Po stažení libusb nám v /home/user adresáři vznikl podadresář /libusb se zdrojovými soubory, které musíme nejprve přeložit. Knihovnu libusb bude nutné po kompilaci nahrát do toolchainu (include .h soubor a statickou a dynamickou knihovnu .so) Dále pokračujeme těmito příkazy :
cd libusb
autoreconf –install
autoconf
env CC=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-gcc \
LD=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-ld \
RANLIB=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-ranlib \
CFLAGS="-I/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/include" \
LDFLAGS="-L/homeuživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/lib" \
STAGING_DIR=/home/uživatel/turris/openwrt/staging_dir \
./configure \
--host=powerpc-uclibc-linux \
--target=powerpc-uclibc-linux \
--build=i686-pc-linux \
--prefix=/home/uživatel/turris/
Tímto máme připravenu knihovnu ke kompilaci a spustíme ji tedy příkazem
make
make CROSS=powerpc-openwrt-linux- CROSS_DIR=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/ STAGING_DIR=/home/uživatel/turris/openwrt/staging_dir/
Nyní máme v adresáři /home/uživatel/libusb/libusb/.libs vytvořeny statické i dynamické verze knihovny libusb, které nyní překopírujeme do toolchainu aby bylo možné libusb knihovnu přikompilovat ke zdrojákům vlastního oscamu.
Nyní provedeme překlad vlastního oscamu, mělo by postačit
Přepneme se do adresáře
cd /home/uživatel/oscam-turris
Provedeme konfiguraci pro toolchain v oscamu, pozor jedná se o jeden velmi dlouhý příkaz.
env CC=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-gcc \
LD=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-ld \
RANLIB=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-ranlib \
CFLAGS="-I/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/include" \
LDFLAGS="-L/homeuživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/lib" \
STAGING_DIR=/home/uživatel/turris/openwrt/staging_dir \
./configure \
--host=powerpc-uclibc-linux \
--target=powerpc-uclibc-linux \
--build=i686-pc-linux \
--prefix=/home/uživatel/turris/
A spustíme vlastní kompilaci
make USE_LIBUSB=1
make USE_LIBUSB=1 CROSS=powerpc-openwrt-linux- CROSS_DIR=/home/uživatel/turris/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/bin/ STAGING_DIR=/home/uživatel/turris/openwrt/staging_dir/
Výsledek je uložen v adresáři : /home/uživatel/oscam-turris/Distribution
Stačí jen přejmenovat na oscam, nakopírovat do /bin a konfiguráky si umístit do /etc/oscam a do /etc/init.d/ přidat soubor oscam s násleujícím obsahem:
Pro zájemce poslední binárka na
https://ulozto.cz/!aCBzstD4uCUf/turris-oscam-zip