Compiler Psgroove Rockbox Sous Windows


Cyan06
 Share

Messages recommandés

Bonjour, j'ai préparé un tutoriel pour compiler un firmware rockbox ainsi que les payload PSGroove, plusieurs personnes me l'ayant demandé.

Il n'y aura peut-être plus de mise à jour pour PSGroove, mais c'est une bonne base pour ceux qui veulent apprendre.

Il s'agit aussi d'une base qui permettra de compiler plus tard le payload PL3, qui lui continue d'être mis à jour.

C'est mon 1er tutoriel sur GX-mod, j'espère qu'il conviendra (j'ai essayé de me baser sur ceux déjà en ligne sur le wiki, donc il ne rend pas super sur le forum. j'espère que ca vous fera moins de boulot pour le mettre en ligne).

Il est en deux parties car il y a trop d'images pour le poster en une seule fois.

Lorsque vous le mettrez en ligne sur le wiki, vous pourriez héberger toutes les images s'y rapportant ?

Ainsi qu'un fichier (il faudra éditer le lien dans "logiciel requis" et à l'étape 4, pour le moment il ne pointe vers rien du tout). En attendant, j'ai mis un lien vers une archive contenant le .patch et un .ipod, seul le .patch sera nécessaire pour le tutorial.

Je l'ai relu plusieurs fois, mais il doit encore rester des fautes d'orthographe qui m'ont échappées :(

Voilà, merci d'avance.

Laissez vos commentaires, j'essaierai de l'améliorer s'il y a des problèmes.

=====================================================

=Introduction=

Dans ce tutoriel, nous allons apprendre à compiler le firmware Rockbox sous Windows, puis nous verrons comment modifier le code source afin de compiler le payload PSGroove.

=Pré-requis=

Matériel :

* Un PC sous Windows.

* 1.3Go d'espace libre sur un ou plusieurs disques durs (200Mo pour le programme d'installation, 700Mo pour l'environnement Linux et 400Mo pour Rockbox)

Logiciel :

* Un environnement Linux : Cygwin ([http://www.cygwin.com/ Télécharger])

* Un programme de Subversion : Tortoise SVN ([http://tortoisesvn.net/downloads Télécharger]), ou tout autre programme SVN

* Une éditeur texte qui accepte le format Linux ([http://notepad-plus-plus.org/fr/download Notepad++] par exemple)

* Un programme supportant les archives tar.bz2 (Winrar, 7zip, etc.)

* Un patch pour Rockbox, par exemple PSGroove Hermes v4b (en attendant que le tutoriel soit sur le wiki, voici un lien vers le fichier : PSGroove Hermes v4b pour iPod4G color/photo)

* Ne pas avoir peur d'utiliser des lignes de commandes.

* De la patience ?

Temps :

* 2H à 4H pour l'installation (Suivant votre connexion internet)

* 8 à 30 minutes par compilation (Suivant votre ordinateur)

Difficulté : Intermédiaire (Plus long que compliqué)

=Le Tutoriel=

info-icon.gif Tout au long du tutoriel, je vais utiliser les dossiers d'installation par défaut, libre à vous de les utiliser ou de les adapter. La seule contrainte sera que vos chemins ne devront jamais comporter d'espace.

info-icon.gif Les captures d'écrans utilisées pour le tutoriel de Cygwin proviennent du tutoriel présent sur le site officiel de [http://www.rockbox.org/wiki/CygwinInstallWithScreenShots Rockbox]. Elle correspondent à une version antérieure de Cygwin, mais cela ne devrait pas vous poser de problème si vous suivez pas à pas les instructions présentes sur GX-mod.

==Étape 1. Installation de Cygwin==

===Cygwin===

Cygwin permet de recréer un environnement Linux sous Windows en installant les correspondances de chacun des programmes Linux compilés pour Windows.

Les programmes installés par Cygwin ne seront accessible que par Cygwin. Vous n'aurez donc aucun conflit avec des programmes Windows similaire déjà installés.

- Téléchargez l'installateur Cygwin : download2.gif

Note: Sauvegardez le fichier sur votre disque dur, nous allons en avoir besoin plusieurs fois.

- Une fois téléchargé, exécutez l'installateur puis cliquez sur Suivant.

- Choisissez Install from Internet, puis cliquez sur Suivant.

Screendump3.png

Le Root Directory correspond au dossier d'installation de Cygwin.

Par défaut, l'installation s'effectue sur C:\cygwin. Si vous avez la place sur votre disque C:\, je vous conseil de conserver ce chemin. Si vous le modifiez, veillez à ce qu'aucun espace ne soit présent dans le chemin d'installation (ex. Ne le mettez pas dans Program Files, car le dossier contient un espace). N'installez pas non plus à la racine de C:\ (sans sous dossier).

Screendump4.png

- Choisissez si l'installation devra être accessible pour tous les utilisateurs de Windows (All Users) ou seulement pour vous (Just Me), puis cliquez sur suivant.

Le Local Package Directory correspond au dossier de téléchargement et de stockage des programmes avant leur installation. (À peu près 200Mo d'espace libre nécessaire)

Screendump5.png

- Sélectionnez Direct Connection, puis cliquez sur Suivant.

Screendump6.png

- Une liste de site de téléchargement apparait alors, sélectionnez-en un et cliquez sur Suivant. Si la connexion échoue, revenez en arrière et choisissez-en un autre.

Screendump7.png

info-icon.gif Jusqu'à présent il n'y avait rien de compliqué, nous avons uniquement cliqué sur Suivant. Maintenant cela devient un peu plus délicat, nous allons devoir sélectionner les programmes Linux à installer.

- Cliquez sur le plus-icon.gif situé devant la ligne Archive afin d'y afficher les programmes s'y rattachant. Si les lignes Zip et Unzip mentionnent Skip, cliquez une fois sur Skip pour indiquer que nous voulons installer la version la plus récente.

Parfois, le fait d'installer une option en active une autre par dépendance. N'en désactivez aucune manuellement.

- De la même façon, répétez l'opération pour :

plus-icon.gif Devel :

* bintuils

* gcc

* gcc-mingw-core

* gdb

* make

* mingw-runtime

* patchutils

* subversion

plus-icon.gif Interpreters :

* perl

plus-icon.gif Text : (Uniquement si vous pensez compiler le manuel d'utilisation. Les manuels sont déjà tous disponibles sur le site officiel de Rockbox.)

* tetex-base

* tetex-extra

- Et enfin, cliquez sur Suivant.

Soyez TRÈS patient, l'installation est en cours. Tous les programmes seront téléchargés puis installés automatiquement.

- Une fois l'installation terminée, cliquez sur Terminer (ou Finish).

===Complément pour Rockbox===

Afin d'installer les programmes Linux spécifiques à Rockbox, nous devons relancer Cygwin, mais cette fois-ci en utilisant une ligne de commande afin de spécifier l'option -X (Setup.exe -X) permettant de télécharger des programmes à partir d'une adresse non officielle.

- Lancer le programme de ligne de commandes de Windows :

Sous Windows XP : Menu démarrer > Exécuter > entrez cmd > Ok

Sous Windows Vista et 7 : Menu démarrer > Invite de commandes

- Attrapez l'icône du programme d'installation de Cygwin (Setup.exe) avec votre souris et lâchez la dans la fenêtre de ligne de commandes. Son chemin apparaitra automatiquement dans la fenêtre. Rajoutez-y un espace, suivi de -X (en majuscule) et appuyez sur Entrée.

- Renouvelez toutes les étapes précédentes jusqu'à arriver à la liste des sites de téléchargement.

Screendump7.png

- Dans la zone User URL: en bas de la fenêtre, entrez l'adresse http://download.rockbox.org/cygwin/, cliquez sur Add pour ajouter l'adresse à la liste. La nouvelle adresse devrait être automatiquement sélectionnée, si ce n'est pas le cas cherchez la dans la liste et cliquez dessus, vous n'avez plus qu'à cliquer sur Suivant.

- De la même manière que précédemment, activez l'installation des programmes suivant (en cliquant sur Skip) :

plus-icon.gif Devel :

* sdl

* m68k-elf-binutils

* m68k-elf-gcc

* sh-elf-binutils

* sh-elf-gcc

* arm-elf-binutils and

* arm-elf-gcc

- Cliquez sur Suivant, et patientez le temps que Cygwin installe les nouveaux programmes.

Une fois l'installation achevée vous devrez exécuter Cygwin afin de créer les fichiers de configuration personnalisés, de cette façon :

- Double cliquez sur l'icône Cygwin présente sur le bureau, ou de cette façon : Menu démarrer > Programmes > Cygwin > Cygwin Bash Shell.

Une fenêtre de ligne de commandes Cygwin s'ouvre alors, indiquant que les fichiers de configuration ont été créés pour votre profil.

- Fermez la fenêtre de Cygwin (Cliquez sur la croix en haut à droite).

===Le compilateur===

Le compilateur utilisé par Rockbox (arm-eabi) doit être lui même compilé par votre ordinateur.

Ce processus prenant + de 7H sous Windows, les exécutables pré-compilés par Dreamlayers (Administrateur du site officiel de Rockbox) sont téléchargeables ici : [http://www.mediafire.com/?ubpp68f8o4ypdwd].

- Décompressez l'archive arm-elf-eabi.tar.bz2 (avec Winrar ou 7zip) dans le dossier C:\Cygwin. Son contenu sera ajouté au dossier usr\local\

Si tout s'est bien passé, vous devriez maintenant avoir le dossier arm-elf-eabi à cet endroit : C:\Cygwin\usr\local\arm-elf-eabi

Nous allons maintenant ajouter les nouveaux chemins aux variables d'environnements. (Cette étape devrait normalement être effectuée par l'installateur, je la rajoute tout de même par sécurité)

- Allez dans le dossier C:\Cygwin\Home\votre_nom_de_profil\ et éditez le fichier .bashcr à l'aide d'un éditeur de texte capable d'ouvrir et sauvegarder des fichiers au format Linux (Par exemple Notepad++).

- à la fin du fichier, rajoutez une ligne : export PATH=/opt/sh/bin:/opt/m68k/bin:/opt/arm/bin:$PATH puis sauvegardez le fichier.

info-icon.gif Cygwin est à présent installé et configuré pour Rockbox et PSGroove.

==Étape 2. Installation de Tortoise SVN==

Afin de compiler Rockbox, nous avons besoin de son code source. Le code source est situé sur un serveur SVN qui permet de mémoriser chaque changement apporté au code, appelé une "révision".

Nous allons donc utiliser un client SVN qui nous permettra de récupérer le code source d'une révision spécifique à PSGroove.

info-icon.gif Si vous avez déjà un client SVN dont vous savez vous servir, passez directement à l'étape 3. Récupération des sources de Rockbox.

- Téléchargez et installez [http://tortoisesvn.net/downloads Tortoise SVN].

- L'installation est simple et rapide, appuyez sur suivant à chaque étape.

Tortoise SVN s'intègre à l'explorateur de fichiers de Windows (Un clic-droit sur les fichiers ou dans un dossier permet d'afficher un menu TortoiseSVN).

Tortoise SVN indique l'état de chaque fichier par rapport à la version récupérée du code source en utilisant des icônes en surimpression de vos icônes habituelles.

tortoise_icon_overlay.png

Ce marquage d'icône demande beaucoup de ressources car Tortoise doit analyser tous les fichiers de votre ordinateur, ce qui peut le rendre instable et provoquer des plantage d'Explorer.exe

Afin d'éviter au maximum ces problèmes, nous allons indiquer à Tortoise que nous souhaitons qu'il vérifie uniquement le dossier dans lequel nous allons conserver notre code source, ainsi que ses sous-dossiers.

- Créez un dossier dans lequel vous souhaitez recevoir le code source, par exemple : F:\homebrew\rockbox\

- Ouvrez ce dossier et faites un clic-droit dans une zone vide, puis choisissez : Tortoise SVN > Settings

tortoise_folder_rightclick.png

- Cliquez sur le menu Icon overlays, comme le montre l'image suivante :

tortoise_settings_overlays.png

- Dans la case Exclude paths, ajoutez toutes les lettres de vos lecteurs, (une lettre par ligne, comme sur l'image ci-dessus) : C:\* D:\* E:\* F:\* etc.

- Dans la case Include paths, ajoutez les dossiers pour lesquels vous souhaitez que Tortoise affiche les icônes, ici nous avons besoin uniquement de F:\homebrew\rockbox\*

- Cliquez sur OK pour valider les changements.

==Étape 3. Récupération des sources de Rockbox==

- Dans le dossier F:\homebrew\rockbox\ faites un clic-droit, et choisissez le menu SVN Checkout...

tortoise_checkout_rightclick.png

- Dans le cadre URL of repository collez cette adresse : svn://svn.rockbox.org/rockbox/trunk

tortoise_checkout_url.png

- Cliquez sur OK, patientez jusqu'à ce que le téléchargement soit terminé, puis cliquez sur Fermer. (À peu près 400Mo d'espace libre nécessaire)

info-icon.gif La révision que nous venons de récupérer correspond à la dernière modification survenue sur le serveur SVN de Rockbox.

Lorsque PSGroove a été programmé, les modifications ont été apportées sur la révision r28160 de Rockbox.

Nous devons donc récupérer la révision 28160 afin d'éviter tout conflits dues aux changements effectués récemment par les développeurs de Rockbox.

Afin de connaitre le numéro de révision demandé par un patch, double-cliquez sur le fichier pour l'ouvrir avec Tortoise SVN.

tortoise_patch_edit.png

Comme vous pouvez le voir, le fichier indique le numéro de révision avec lequel le patch à été créé : Ici, c'est bien le 28160.

Nous allons donc demander à Tortoise SVN de modifier notre copie du code source afin qu'ils soient identique à celui de la révision 28160 :

- Faites un clic-droit dans le dossier (sur une zone vide), puis choisissez le menu TortoiseSVN > Update to revision...

tortoise_update_rightclick.png

- Entrez le numéro de révision 28160, puis cliquez sur OK.

tortoise_update_menu.png

==Étape 4. Comment appliquer un patch ?==

Généralement, lorsqu'une modification est apportée au code source, la personne ayant fait le changement fournit soit le nouveau code source, soit un patch permettant de reproduire le changement sur votre code source d'origine.

- Si vous ne l'avez pas encore téléchargé, prenez le patch PSGroove Hermes v4b contenu dans cette archive : download2.gif (en attendant que le tutoriel soit sur le wiki, voici un lien vers le fichier : PSGroove Hermes v4b pour iPod4G color/photo)

- Placez le fichier rb_psgroove_v4b.patch dans le dossier F:\homebrew\rockbox\

- Faites un clic-droit sur le patch, puis choisissez TortoiseSVN > Apply patch...

tortoise_patch_rightclick.png

Le module d'application de patch apparait, avec la liste des fichiers qui seront modifiés.

tortoise_patch_applyall.png

Note : Vous pouvez voir les changements qui seront apportés à chaque fichier en sélectionnant Preview patched file.

- Faites un clic-droit dans la liste et choisissez Patch all afin d'appliquer le patch à tous les fichiers de la liste d'un seul coup.

- Vous pouvez fermer la fenêtre de Tortoise SVN, le patch PSGroove est à présent appliqué à votre code source.

Modifié par Cyan06
Lien vers le commentaire
Partager sur d'autres sites

==Étape 5. Compilation de Rockbox==

- Créez un dossier build dans F:\homebrew\rockbox\

info-icon.gif Vous pouvez aussi l'appeler "iPodNano1G", ou "iPodVideo", et même en avoir un par modèle de lecteur audio.

Le tutoriel utilisera le dossier F:\homebrew\rockbox\build\.

- Lancez Cygwin :

cygwin_new.png

- Tapez cd f:/homebrew/rockbox/build/

cygwin_change_dir.png

- Tapez ../tools/configure suivi de Entrée, afin de préparer la compilation pour un modèle spécifique.

cygwin_configure.png

- Tapez le numéro du modèle à compiler (ex. 20 pour l'iPod 4G Color/Photo) et appuyez sur Entrée.

- Entrez la lettre N (pour spécifier une compilation normale), et appuyez sur Entrée.

- Tapez make, et appuyez sur Entrée pour lancer la compilation. (Note : Pour compiler plus rapidement, vous pouvez spécifier le nombre de processeurs à utiliser avec la commande -j, exemple : make -j4 pour un Quad Core)

cygwin_select_ipod_and_make.png

- Patientez, la compilation est en cours, 8 à 30 minutes suivant votre PC :)

- Tapez make zip pour terminer la compilation et empaqueter le tout dans un rockbox.zip

cygwin_make_zip.png

Votre rockbox.zip est disponible dans le dossier F:\homebrew\rockbox\build\.

Afin de changer de lecteur audio :

- Tapez make clean suivi de Entrée, afin de supprimer les fichiers compilés présent dans le dossier build.

- Recommencez à partir de l'étape du choix du lecteur : Tapez ../tools/configure

=FAQ=

Comment Supprimer un patch avant d'en appliquer un nouveau ?

Grâce à Tortoise SVN, vous pouvez voir tous les fichiers qui ont été modifiés lorsque vous avez appliqué le patch.

En effet, les fichiers modifiés ont une icône "point d'exclamation rouge", les fichiers ajoutés ont une icône "+" et les fichier inconnus une icône "Point d'interrogation".

- Supprimez tous ces fichiers manuellement.

- Retourner dans le dossier principal F:\homebrew\rockbox\ et faite un clic-droit > Tortoise SVN > Update to revision... et rechargez la révision 28160.

Cela va compléter les fichiers manquant afin d'avoir une copie conforme à la révision demandée.

- Vous pouvez à présent appliquer un nouveau patch.

=Remerciement=

Un grand merci à Cyan

Vous avez un soucis ? Venez en parler sur ce topic : xxxxxx

Modifié par Cyan06
Lien vers le commentaire
Partager sur d'autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
 Share