Doume forum
Récepteurs HD => ABCOM - IPBox 900-910-9000 => Trucs et Astuces => Discussion démarrée par: zorglub le 28 janvier 2010 à 22:19:10
-
Voici un post fort intéressant de met67 trouvé sur le site sifteam.eu (la team proche de Tideglo).
Comme l'original est en italien, je me suis permis d'en faire une traduction ci dessous (l'original est ici: http://forum.sifteam.eu/ipbox-9000-900-hd-cuberevo-mini/66150-creare-ambiente-sviluppo-per-dgs-ipbox.html):
Compte tenu de la fragmentation des informations disponibles autour de la création d'un environnement de développement pour nos décodeurs, j'ai rassemblé dans un guide les étapes à suivre (plus ou moins ...).
L'idée est d'avoir une machine virtuelle sur VirtualBox avec Ubuntu installé et dédié au développement.
Il est sous-entendu que, le lecteur a suffisamment de connaissance en Linux et dans l'écriture de logiciels en C. Si tel n'était pas le cas, vous êtes prié de recherchez des tutoriels en ligne pour obtenir ces compétences.
La version d'Ubuntu pour cet exemple est la v 9h10 32 bit (avec 64 bit j'ai eu des problèmes ...).
Nous commençons par créer une machine virtuelle avec VirtualBox, en choisissant Linux / Ubuntu comme type de système, avec suffisamment de mémoire vive et de place sur le disque dur afin de pouvoir créer un enregistrement d'au moins 6 Go (avec le système et le SDK j'ai occupé 5,3 Go).
Il n'y a rien de spécial à faire lors de l'installation des options de d'Ubuntu, il suffit de suivre toujours les options par défaut et de créer ensuite son propre utilisateur.
Une fois que vous avez installé Ubuntu, télécharger les mises à jour système, installer les droits de l'utilisateur et redémarrer la bécane.
Nous sommes maintenant prêts à commencer.
Télécharger la cross-compilateur pour le processeur SH4 (CDK) ici:
http://dev.dgstation.co.kr/release/cuberevo/sh4_cdk_target-20080522.tgz
Décompressez-le dans /opt tant que root. Si vous ne pouvez utiliser ces commandes comme expliqué, sachez qu'il y a mille et une façons de le faire:
$ sudo mkdir /opt
$ cd /opt
$ sudo tar zxvf <chemin du CDK ci-dessus>
Maintenant, ajoutez le chemin vers le cross-compilateur (mille autres manières ...):
$ echo PATH=\"/opt/STM/STLinux-2.2/devkit/sh4/bin:\$PATH\" >> ~/.profile
Installer ensuite SVN (subversion) et ncftp (un client FTP en ligne de commande pratique):
$ Sudo apt-get install subversion
$ Sudo apt-get install ncftp
Créer un répertoire de développement et de CD à:
$ Mkdir ~ / IPBox
$ Cd ~ / IPBox
Téléchargez la dernière version du SDK avec les exemples dans le répertoire courant:
$ Svn co http://dev.dgstation.co.kr/repos/cuberevo.
Essayez-le avec le plugin epg_ex :
$ cd plugin/epg_ex
$ make
Devrait retourner quelque chose comme ceci:
sh4-linux-gcc-I. / -I../../include/sbox -I../../include/modules -I../../include/tools-I ../../ include / st_drv-Wall-DDEBUG-DDEBUG_LEVEL = 5-c-o main.o main.c
sh4-linux-gcc-I. / -I../../include/sbox -I../../include/modules -I../../include/tools-I ../../ include / st_drv-Wall-DDEBUG-DDEBUG_LEVEL = 5-shared-nostartfiles-o main.o epg_ex.plugin
sh4-linux-strip epg_ex.plugin
S'il ya des erreurs, essayer de faire un simple hello World:
$ Mkdir ~ / IPBox / plugin /hello
$ Cd ~ / IPBox / plugin /hello
Créé dans un fichier hello.c hello:
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("Hello World\n");
return 0;
}
et son Makefile (adapté avec le Mot de passe et adresse de votre décodeur):
CROSS = sh4-linux-
CC = $(CROSS)gcc
STRIP = $(CROSS)strip
objs += hello.o
CFLAGS += -I../../include/sbox
CFLAGS += -I../../include/modules
CFLAGS += -I../../include/tools
CFLAGS += -I../../include/st_drv
CFLAGS += -Wall
CFLAGS += -DDEBUG
CFLAGS += -DDEBUG_LEVEL=5
all : hello
clean :
rm -f hello
rm -f *.o
rm -f tags
hello : $(objs)
$(CC) $(CFLAGS) -o $@ $^
$(STRIP) $@
install:
ncftpput -u root -p sifteam 10.1.1.3 /tmp hello
Maintenant, essayez de compiler, et si tout va bien, transférer ensuite vers votre décodeur;
$ Make
$ Make install
S'il n'y a pas d'erreurs, connectez vous au décodeur en Telnet, et rendez le fichier exécutable et lancez-le:
# chmod +x /tmp/hello
# /tmp/hello
et vous devriez voir comme dans un rêve
Hello World
Une chose à laquelle il faut faire attention ce sont les liens pour les options qui, dans le cas des plugins ne peut utiliser les fichiers Standard au démarrage, parce que le plugin est chargé et lancé par sbox et non par le shell. Si vous utilisez les mêmes options pour un programme de shell vous aurez une erreur de segmentation ...
Pour tout le reste (documentation, Enigma2 élaboration, la compilation de Lady Oscar, etc.) j'espère que quelqu'un de plus versé que moi pourra donner un coup de main dans ces domaines.
Petits plus:
Pour «jouer» avec la DGS db.dat, la base de données qui contient la liste des canaux plus d'autres choses, il peut être utile d'installer sqlite3:
$ Sudo apt-get install sqlite3
-
Joli boulot, zorglub
Merci beaucoup
-
Je l'ai trouvé là : http://www.filecrop.com/46436723/index.html (http://www.filecrop.com/46436723/index.html)
Salut,
Ce CDK m'intéresserait mais le lien n'est plus bon et malgrès mes recherches, je ne le retrouve pas, quelqu'un pourrait-il me le procurer ?
Merci.
-
Merci à toi,
Je ne l'ai pas testé car j'avoue être un peu loin de ça pour le moment (mais sait-on jamais).
Pourrais-je savoir quels sont tes projets car je ne doute pas que ceux-ci pourraient avoir un intérêt pour notre communauté... (en mp si sensible...)
Bonne chance
-
Bonjour
Il s'agit de compiler pour une plateforme Atevio 7000 (sh4 en stlinux 2.2 pour le firmware constructeur) un 'plugin' comme le permet ce firmware qui est pour presque totalité en read only.