LUG Castegnato - Linux Users Group Castegnato / Compilazione sorgenti Qbox su Mandriva 2009.1

LUG Castegnato - Linux Users Group Castegnato

Linux User Group Castegnato - BS

Non hai eseguito l'accesso.

  • Indice
  •  » QBoxHd
  •  » Compilazione sorgenti Qbox su Mandriva 2009.1

#1 01-09-2009 00:29:40

Ken Parker
Moderator
Registrato: 14-03-2008
Messaggi: 736
Sito web

Compilazione sorgenti Qbox su Mandriva 2009.1

Qui di seguito tutte le istruzioni per l' installazione dell' ambiente di sviluppo

Il QBoxHD utilizza il micropocessore  a ST40 della STM che utlizza l' architettura SH4
Il modello esatto è il STi7101.
La scheda principale del  QBoxHD è basata su una scheda della ST chiamata MB442.
Per poter compilare tutto l' ambiente per far funzionare il decoder si deve prima installare tutto l' ambiente di sviluppo fornito dalla ST.

Per afre questo bisogna scaricare l' immagine iso dell' ambiente di sviluppo  da qui :f tp://f tp.stlinux.com/pub/stlinux/2.3/iso/STLinux-2.3-sh4-03-11-07.iso

# mkdir -p /mnt/st
# mount -t iso9660 -o loop STLinux-2.3-sh4-03-11-07.iso /mnt/st
#  c d /mnt/st
# ./install all-sh4-glibc

a questo punto avrete una serie di errori.
i files incriminati sono :

/opt/STM/STLinux-2.3/host/usr/lib/python2.3/site-packages/yum/__init__.py
/opt/STM/STLinux-2.3/host/usr/lib/python2.3/site-packages/yum/repos.py
/opt/STM/STLinux-2.3/host/usr/lib/yum-plugins/cli.py
/opt/STM/STLinux-2.3/host/usr/lib/yum-pluginschangelog.py

a questi file dovete sostituire il comando

self.repos.populateSack(with='filelists') con il comando self.repos.populateSack(mdtype='filelists')

Questo perchè lo script è stato fatto per ilk python 2.5 mentre mandirva utilizza il 2.6

ad ogni cambio rilanciate

# ./install all-sh4-glibc

A questo punto avete installato l' ambiente per la compilazione.

Ora bisogna fare l' aggiornamento dell' ambiente medeisco con i seguenti comandi:

# export PATH=$PATH:/opt/STM/STLinux-2.3/host/bin
# stmyum update


A questo punto si è installato l' ambiente di sviluppo (toolchain, root filesystem, utils...) per il micro ST40

le principali directory sono :

    * /opt/STM/STLinux-2.3/devkit/sh4/bin

Cross-toolchain (compiler, linker...). Devi inserire questo  PATH  in .bashrc

    * /opt/STM/STLinux-2.3/devkit/sh4/target

The root filesystemche può essere montato per il testing del decoder via NFS(attenzione questo NON è il filesystem del QBoxHD.

    * /opt/STM/STLinux-2.3/host/bin

Diverse utility come mkimage usata per la creazione dell'  U-Boot.

    * /opt/STM/STLinux-2.3/devkit/sources/kernel

I Sorgenti del kernel di linux (attenzione bisogna applicare le patch del QBOXHD)

Ultima modifica di Ken Parker (01-09-2009 00:53:55)


Coltiva Linux, perchè Windows si pianta da solo

Non in linea

 

#2 01-09-2009 18:23:37

Ken Parker
Moderator
Registrato: 14-03-2008
Messaggi: 736
Sito web

Re: Compilazione sorgenti Qbox su Mandriva 2009.1

Qui di seguito le istruzioni per compilare enigma2 (il programma che serve per far funzionare il decoder)

Configurazione dell' ambiente di compilazione

esegui i seguenti comandi:

$ export BUILD=i386-linux
$ export HOST=sh4-linux
$ export PREFIX=/opt/STM/STLinux-2.3/devkit/sh4/target
$export PATH=$PATH:/opt/STM/STLinux-2.3/devkit/sh4/bin

Download sorgenti al seguente indirizzo.

Download Enigma2

$ svn checkout https://www.qboxsvn.com/e2-0.2/e2-0.2/trunk  enigma2_qboxhd

Download le patch del kernel per il qbox (attenzione devi essere root)

# svn checkout  h ttps://www.qboxsvn.com/linux-sh4-2.6.23.16/linux-sh4-2.6.23.16/trunk  /opt/STM/STLinux-2.3/devkit/sources/kernel/havana-linux-sh4

Per poter compilare enigma2, bisogna prima scaricare una serie di pacchetti e compilari (sono librerie utilizzate da enigma2).
Le librerie sono le seguenti:

* fribidi-0.10.9
    * id3lib-3.8.3
    * libsigc++-1.2.7
    * libdvbsi++-0.3.3
    * libxslt-1.1.16
    * libxmlccwrap-0.0.12

per scaricare i pacchetti eseguite i seguenti comandi: (attenzione agli spazi da Togliere)

mkdir Archivio
c d Archivio
w get  h ttp://fribidi.org/download/fribidi-0.10.9.tar.gz h ttp://sourceforge.net/projects/id3lib/files/id3lib/3.8.3/id3lib-3.8.3.tar.gz/download http://f tp.gnome.org/pub/GNOME/sources/libsigc++/1.2/libsigc++-1.2.7.tar.gz h ttp://www.saftware.de/libdvbsi++/libdvbsi++-0.3.3.tar.gz  http://ft p.gnome.org/pub/gnome/sources/libxslt/1.1/libxslt-1.1.16.tar.gz h ttp://www.ant.uni-bremen.de/whomes/rinas/libxmlccwrap/download/libxmlccwrap-0.0.12.tar.gz
c d ..

Si compilano in questo modo:

Compilazione fribidi

$ tar -xvzf Archivio/fribidi-0.10.9.tar.gz
$ c d fribidi-0.10.9
$ ./configure --build=$BUILD --host=$HOST --prefix=$PREFIX/usr/local
$ make
$ make install

——————

Compilazione id3lib-3.8.3

$ tar -xvzf Archivio/id3lib-3.8.3.tar.gz
$ c d id3lib-3.8.3
$ ./configure --build=$BUILD --host=$HOST --prefix=$PREFIX/usr/local --enable-debug=no
$ make
$ make install

——————

Compilazione libsigc++-1.2.7

$ tar -xvzf Archivio/libsigc++-1.2.7.tar.gz
$ c d libsigc++-1.2.7
$ ./configure --build=$BUILD --host=$HOST --prefix=$PREFIX/usr/local
$ make
$ make install

——————

Compilazione  libdvbsi++-0.3.3

$ tar -xvzf Archivio/libdvbsi++-0.3.3.tar.gz
$ c d libdvbsi++-0.3.3
$ ./configure --build=$BUILD --host=$HOST --prefix=$PREFIX/usr/local
$ make
$ make install

——————
Compilazione libxslt-1.1.16

$ tar -xvzf Archivio/libxslt-1.1.16.tar.gz
$ c d libxslt-1.1.16

$ ./configure --build=$BUILD --host=$HOST --prefix=$PREFIX/usr/local   --without-debug   --without-debugger  --without-crypto --with-libxml-include-prefix=$PREFIX/usr/include/libxml2 --with-libxml-libs-prefix=$PREFIX/usr/lib exec_prefix=$PREFIX/usr
$ make
$ make install

ATTENZIONE quando c' è l' errore andare nella directory : libxslt e digitare
sh4-linux-gcc -shared  .libs/attrvt.o .libs/xslt.o .libs/xsltutils.o .libs/pattern.o .libs/templates.o .libs/variables.o .libs/keys.o .libs/numbers.o .libs/extensions.o .libs/extra.o .libs/functions.o .libs/namespaces.o .libs/imports.o .libs/attributes.o .libs/documents.o .libs/preproc.o .libs/transform.o .libs/security.o  -L/opt/STM/STLinux-2.3/devkit/sh4/target/usr/lib/libxml2.so -lz -lm  -Wl,-soname -Wl,libxslt.so.1 -o .libs/libxslt.so.1.1.16

——————
Compilazione libxmlccwrap-0.0.12

$ tar -xvzf Archivio/llibxmlccwrap-0.0.12.tar.gz
$ c d l libxmlccwrap-0.0.12
$ ./configure --build=$BUILD --host=$HOST --prefix=$PREFIX/usr/local

Set the var INCLUDES to the following value:

INCLUDES = -I$(top_srcdir) \
  -I/opt/STM/STLinux-2.3/devkit/sh4/target/usr/include/libxml2 \
  -I/opt/STM/STLinux-2.3/devkit/sh4/target/usr/local/include

Set the var LIBS to the following value:

LIBS = /opt/STM/STLinux-2.3/devkit/sh4/target/usr/lib/libxml2.so \
/opt/STM/STLinux-2.3/devkit/sh4/target/usr/local/lib/libxslt.so

Edit the file testlib/Makefile

Set the var INCLUDES to the following value:

INCLUDES = -I$(top_srcdir) -I/opt/STM/STLinux-2.3/devkit/sh4/target/usr/include/libxml2

Set the var LIBS to the following value:

LIBS = /opt/STM/STLinux-2.3/devkit/sh4/target/usr/lib/libxml2.so \
/opt/STM/STLinux-2.2/devkit/sh4/target/usr/local/lib/libxslt.so

$ make
$ make install

Ultima modifica di Ken Parker (21-09-2009 22:43:04)


Coltiva Linux, perchè Windows si pianta da solo

Non in linea

 
  • Indice
  •  » QBoxHd
  •  » Compilazione sorgenti Qbox su Mandriva 2009.1

Footer forum

Powered by PunBB
© Copyright 2002–2008 PunBB