website logo
Auteur
avatar
thellier

Forum » » Création-Développement » » INSTALLER UN COMPILATEUR CROISE POUR OS4 AVEC CYGWIN


Posté : 15-06-2015 14:57 icone du post

INSTALLER UN COMPILATEUR CROISE POUR OS4 AVEC CYGWIN

Un Compilateur croisé est un compilateur qui tourne sur une machine A et donne des programmes pour une machine B
Souvent la machine A est plus rapide et/ou a plus de mémoire donc ça va plus vite de compiler de gros projets ainsi
Au tout début AmigaOS a ainsi, je crois, été conçu sur des machines Unix.

Cygwin est un environnement Linux qui tourne dans Windows (une sorte de Geek-Gadgets ou de Aros-Hosted pour windows)
Cygwin a les avantages de Linux sans installer Linux sur votre PC

Ainsi on peut manipuler les fichiers coté Cygwin mais aussi coté Windows
Vous pouvez copier/coller une commande vers le Shell Cygwin pas besoin de la saisir manuellement
Vous pouvez utiliser un éditeur de Windows comme "Scite" pour éditer facilement votre code quand ??make?? vous signale des erreurs coté Cygwin
Vous pouvez avoir WinUAE-ppc installé du côté de Windows
Donc cela semble une bonne solution pour le code/test de programmes AmigaNG

1) Installer Cygwin
https://www.cygwin.com/install.html
Run setup-x86.exe

2) Pensez à cocher le paquet ?make? pour l'installer aussi (pas mis par défaut)
Si vous avez oublié d'installer ?make?, alors vous pouvez l'ajouter facilement à votre Cygwin déjà installé tout simplement en exécutant de nouveau l'outil de configuration setup-x86.exe

3) De plus, le compilateur croisé a besoin de versions particulières de libmp & libgmp
Je les ai installées comme ?make? mais les versions ne sont pas les mêmes
Alors je les ai renommées pour obtenir ça au final dans /bin/
cyggmp-10.dll
cyggmp-3.dll
cygmpfr-1.dll
cygmpfr-4.dll


4) télécharger les compilateurs croisés et les outils pour AmigaNG
http://kas1e.mikendezign.com/zerohero_crosscompilers_backup/i686-c ygwin/ppc-amigaos-binutils-2.18.tar.bz2
http://kas1e.mikendezign.com/zerohero_crosscompilers_backup/i686-c ygwin/ppc-amigaos-gcc-4.4.3.tar.bz2
à copier dans le répertoire où est Cygwin dans /usr/local

5) lancer cygwin : un shell s'ouvre
Simplement copie/coller les commandes suivantes devant le prompt du shell :
cd /usr/local
tar jxf binutils-2.18.tar.bz2
tar jxf ppc-amigaos-gcc-4.4.3.tar.bz2

6) créer le répertoire SDK pour obtenir ce qui suit:
/usr/local/amiga/ppc-amigaos/SDK

7) côté cygwin
simplement copie/coller la commande suivante devant le prompt du shell :
ln -s /usr/local/amiga/ppc-amigaos/SDK /SDK

8) Coté Windows éditer le fichier Cygwin/home/tonlogin/.bashrc et y ajouter cette ligne (tonlogin dépend du nom de ta machine)
export PATH=/usr/local/amiga/bin:$PATH

9) Depuis un véritable AmigaNG (ou WinUAE-ppc) qui a le SDK installé: faire une archive avec les répertoires suivants (y compris le contenu)
/SDK/clib2
/SDK/newlib
/SDK/include
/SDK/local
Coté Windows juste extraire l'archive dans /usr/local/amiga/ppc-amigaos/SDK

Et Voilà : Un compilateur croisé pour Amiga NG

10) Transférer son prog dans WinUAE
le problème c'est que WinUAE en mode PPC n'accepte pas les répertoires PC partagés avec le coté Amiga
Donc pour transférer mes progs "dans" WinUAE-ppc j'utilise cette solution
Deux hardfiles :
OS41FE:(Accelerator board scsi)
WORK: (Ide)

Deux WinUAE configurations :
1) "OS41FE" cette config boote sur OS41FE: avec aussi Work:
2) "Transfer" cette config boote sur workbench3.adf avec aussi Work: et un répertoire PC comme TEMP:
Ainsi je copie mes fichiers de TEMP:(pc) à WORK:(Amiga)

11) Des outils Windows pratiques
WinUAE en mode ppc pour tester ses progs
Scite un éditeur de texte évolué à coloration syntaxique (mais un peu dur à configurer, je peut vous l'envoyer prêt à marcher)
ExamDiff et Kdiff3 des "diff" graphiques : voir les différences entre deux versions des sources
Agent Ransack un outil de recherche de fichiers : pour retrouver dans quel ?@$%$ de include se trouve cette définition


Alain Thellier



Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig

Cet article provient de Le site des utilisateurs francophones actuels et futurs d'AmigaOS 4.x
https://amiga-ng.org/viewtopic.php?topic=2112&forum=14