:: PlayerAdvance.org ::  

Précédent   :: PlayerAdvance.org :: > :: Développement Amateur :: > Tutoriels

Publicité

Réponse
 
Outils de la discussion Modes d'affichage
Vieux 10/09/2006, 16h45   #1
KerneL
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: Annecy
Messages: 367
Voir les codes amis Wii
Par défaut Installation de PALib sous Linux


Je vous propose d'aborder à travers ce tuto l'installation de PALib sous Linux (principalement sous Ubuntu et en principe pour toutes les distributions si tout va bien). Bien que les utilisateurs de Linux ne forment pas une majorité, je pense qu'il n'est pas inutile de donner un coup de pouce à qui voudrait tenter l'aventure .

Une petite précision de Darkmath:
Citation:
Envoyé par Darkmath
Pour installer tout ça sur Mac OSX c'est en gros la même chose.
Y a d'autres solutions mais bon le plus simple c'est de faire pareil.
Ca peut sans doute servir a quelques personnes donc je le précise.
1 De quoi va-t-on avoir besoin?


2 Préparons le terrain

Je pars du principe que vous avez votre belle distribution d'installée et que la PALib, la libNDS et le devkitARM ont été téléchargés (comment ça "Beuh non"?...allez, au boulot!).

Une petite note à l'attention des utilisateurs tournant en 64bits:
Citation:
Envoyé par Samote
Les exécutables de devkitARM ne sont compatibles que 32bits, pour les lancer sous 64bits il faut le paquets "ia32-libs" pour debian et ubuntu.
A bon entendeur...

2-1 Organisation des répertoires:
Tout d'abord, il faut s'organiser. Créez un répertoire 'devkitpro' là où vous avez les pleins pouvoir (dans votre répertoire home par exemple). Copiez les 3 fichiers téléchargés precedement dans ce repertoire et décompressez tout!
Code:
$ unzip PAlibXXXXXX.zip

$ bunzip2 devkitARM_rXX-linux.tar.bz2
$ tar xvf devkitARM_rXX-linux.tar
Au sein de l'archive de PAlib se trouvent deux répertoires vitaux pour notre installation: PAlib et libnds. Déplaçons les à la base du répertoire devkitpro.
Décompressez ensuite la libnds dans le répertoire existant et du même nom (afin d'écraser les fichiers):
Code:
$ mv libnds-XXXXXXXX.tar.bz2.tar.bz2 libnds
$ cd libnds
$ bunzip2 libnds-XXXXXXXX.tar.bz2.tar.bz2
$ tar xvf libnds-XXXXXXXX.tar.bz2.tar
Vous aurez au final l'arborescence suivante:
Code:
/
|--home
       |--<login>	
	     |--devkitpro
		|-devkitARM
		|-libnds
		|-PAlib
		|-PAlibXXXXXX
 			|-PAlibDoc Eng
			|-PAlibDoc Fr
			|-PAlibExamples
			|-PAlibTemplate
2-2 Make es-tu là?:
On va s'assurer que l'on dispose du kit du parfait petit développeur, alors ouvrez donc un terminal (oui oui, on lâche la souris). Il va falloir s'assurer que l'on puisse compiler en paix. Pour ça, tapez "make", là, dans le vide.
Si vous obtenez un message du genre:
Code:
bash: make : commande introuvable
Et bien...c'est mal .
Si par contre cette commande sont bien exécutées par le système alors tout va bien.
Sinon pas de panique, il suffit d'aller récuperer les bons paquets: ouvrez synaptic (ou passez par apt-get), et rechercher lepaquet 'make'. Installez le, le gestionnaire de paquet se chargera des dépendances, tout seul, comme un grand.

A ce stade, si tout va bien, vous devriez obtenir:
Code:
$ make
make: *** Pas de cibles spécifiées et aucun makefile n'a été trouvé. Arrêt.
2-3 Les variables d'environnement:
L'installation de PALib requiert de définir trois variables d'environnement. Pour ce faire, le mieux est de modifier le fichier '/etc/environment' qui contient la plupart de ces variables.
Ouvrez le avec votre éditeur préféré et ajoutez ces trois lignes:
Code:
DEVKITPRO="/home/<login>/devkitpro"
DEVKITARM="/home/<login>/devkitpro/devkitARM"
PAPATH="/home/<login>/devkitpro/PAlib"
Adaptez la configuration suivant votre propre arborescence si besoin.
Appliquez les modifications apportées avec la commande:
Code:
$ source /etc/environment
Vérifiez que les modifications ont bien été appliquées avec la commande 'env' (qui permet d'afficher toutes les variables d'environnement du système), dans un niveau terminal si besoin. Si les modifications n'ont pas été enregistrées, redémarrez votre système.

2-4 La libWifi et la libFat:
Elle sont désormais "livrées" avec PAlib .
[/code]

A partir de là, tout devrait bien se passer. Si ce n'est pas la cas n'hésitez pas à poser vos questions dans ce post .


3 Pour finir

Nous allons tester notre installation toute neuve. Entrez dans le répertoire PAlibXXXXXX/PAlibExamples puis dans n'importe quel autre répertoire (par exemple Input/Keyboard).
Une fois là, tapez simplement:
Code:
$ make
Si la compilation se termine sur:
Code:
Nintendo DS rom tool 1.30 - Jul 24 2006 06:34:31 by Rafael Vuijk (aka DarkFader)built ... Keyboard.ds.gba
dsbuild 1.21 - Jul 24 2006
using default loader
C'est que tout s'est bien déroulé, félicitations!

Attention! Il y a une modification à apporter aux fichiers afin de pouvoir utiliser les fonctions 3D!

Pour cela:
  • Remplacez glViewPort par glViewport dans PA_3D.c
  • Ajouter glGetGlobals()-> devant chaque occurence de "textures" (au pluriel) et "activeTexture" dans les fichiers PA_3DSprites.c et PA_3DSprites.h.

Une fois les modifications effectuées, lancez le script "build.sh" à la racine de PALib ou bien faites la suite de commande: make clean, make, make archive. Si la compilation de la lib se passe bien, c'est gagné.

4 Quelques logiciels utiles

4-1 PAgfx pour linux:
L'utilitaire PAgfx est désormais disponible sous Linux. Ses sources se trouvent dans le répertoire PAlib/Tool/PAGfx - Linux. Pour le compiler, il faut tout d'abord installer les packages suivant:
  • mono-gmcs
  • libmono-dev
  • libgdiplus

Tapez ensuite la suite de commandes suivante pour la compilation et l'installation:
Code:
$ ./configure
$ make
$ sudo make install
Si au niveau du ./configure le système retourne ceci:
Code:
configure: error: cannot find install-sh or install.sh in "." "./.." "./../.."
Alors vous n'avez plus qu'à installer le package automake (version 1.10 en principe) et recommencer.
Si tout s'est bien passé, alors PAGfx est installé et peut être appellé dans un terminal via la commande:
Code:
$ pagfx
4-2 Autres outils graphiques:
Pour la convertion graphique, il existe une version linux de gfx2gba et GbaGraphics de Brunni fonctionne également avec le dernier Wine.

4-3 DeSmume:
A noter la présence de l'émulateur DeSmume dans le répertoire PAlib/Emulators. Ce dernier fonctionne bien grâce à la dernière version du logiciel Wine.
Même chose pour l'émulateur Dualis (à récuperer à part).
Thoduv me souffle dans l'oreillette qu'il est même possible de le compiler et donc de le faire fonctionner en natif en récuperant les source sur le CVS de sourceforge à cette adresse http://sf.net/projects/desmume puis en les compilant.

5 Pour les feignants
Link Mauve nous a gratifié d'une archive "tout en un" facilitant grandement la manoeuvre:
Citation:
Envoyé par Link Mauve
J'ai rajouté les sources de DeSmuME (7.3), décompressé l'archive de PAgfx, supprimmé les exe, bat, vhw et autres, mis un make.sh, un clean.sh dans chaque exemple de la PAlib ainsi qu'un pagfx.sh et un unpagfx.sh dans chaque dossier gfx.
J'ai aussi créé un script shell qui compile ou clean tous les dossiers contenant un makefile. Il suffit de le mettre dans le dossier de vos projets, de l'exécuter et de lancer le make.sh, le clean.sh, le pagfx.sh ou le unpagfx.sh pour faire l'action voulue
Pour télécharger l'archive, suivez le guide.

Voilà qui conclue ce tuto sur la PAlib façon banquise. J'espere avoir été suffisement clair. N'hésitez pas à me faire part de vos remarques, suggestions et surtout succès .
__________________
"Attack me if you dare, I will crush you!"
Portage de Squares 2 sur DS

Dernière modification par KerneL ; 08/11/2007 à 22h17. Motif: Compatibilité avec les projets 3D
KerneL est déconnecté   Réponse avec citation

Publicité

Vieux 10/09/2006, 17h24   #2
Dr.Vince
Administrateur
 
Date d'inscription: 10/11/2005
Messages: 4 965
Voir les codes amis Nintendo DS Voir les codes amis Wii
Par défaut

merci pour le tuto Kernel !!

maintenant retourne coder sur PCG

sinon j'ai déplacer le tuto dans la bonne section
__________________
Projets Abandonnés: [Arcomage Advance] [Puzznic] [PA Card Games] [Blob Runner]
Projet en cours: [Ne plus abandonner de projet...]
Dr.Vince est déconnecté   Réponse avec citation
Vieux 10/09/2006, 17h48   #3
KerneL
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: Annecy
Messages: 367
Voir les codes amis Wii
Par défaut

Woops, désolé pour la section...
Citation:
Envoyé par Dr.Vince
maintenant retourne coder sur PCG
Chef, oui chef!
__________________
"Attack me if you dare, I will crush you!"
Portage de Squares 2 sur DS
KerneL est déconnecté   Réponse avec citation
Vieux 10/09/2006, 17h50   #4
Pyroh
Linux Addict
 
Date d'inscription: 10/11/2005
Localisation: Dans le plus profond désarois
Messages: 412
Par défaut

Joli tuto Kernel Ca permettra aux linuxiens en herbe de se mettre au dev sur PaLib.
Mais tu as oublié de préciser qu'il fallait avoir gcc >= 4.1, qui n'est pas en standard sur certaines distrib (ubuntu notament), pour le dernier devkit
__________________
la référence...
Pyroh est déconnecté   Réponse avec citation
Vieux 10/09/2006, 17h57   #5
thoduv
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: ...
Messages: 1 464
Par défaut

Sympa comme tuto KerneL !
Par contre j'ai pas compris pourquoi on aurais besoin de gcc ...
__________________
"S'il n'y a pas de solutions c'est qu'il n'y a pas de problème ..."
< mon devblog > ... < Lapinou Jumps ! - un jeu de plate-forme "vertical" avec un mignon petit lapin. >
thoduv est déconnecté   Réponse avec citation
Vieux 10/09/2006, 18h05   #6
Pyroh
Linux Addict
 
Date d'inscription: 10/11/2005
Localisation: Dans le plus profond désarois
Messages: 412
Par défaut

Parce sous linux on utilise GCC pour compiler tout ce qui bouge mais il faut lui ajouter des info pour bien coller au processeur (le fameux devkit arm) et à la machine
__________________
la référence...
Pyroh est déconnecté   Réponse avec citation
Vieux 10/09/2006, 18h23   #7
Darkmath
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 162
Par défaut

Petit ajout, pour installer tout ça sur Mac OSX c'est en gros la même chose.
Y a d'autres solutions mais bon le lpus simple c'est de faire pareil.
Ca peut sans doute servir a quelques personnes donc je le précise.
Darkmath est déconnecté   Réponse avec citation
Vieux 10/09/2006, 18h39   #8
thoduv
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: ...
Messages: 1 464
Par défaut

Citation:
Envoyé par AnarX
Parce sous linux on utilise GCC pour compiler tout ce qui bouge mais il faut lui ajouter des info pour bien coller au processeur (le fameux devkit arm) et à la machine
Non, Devkitarm est une toolchain complete qui n'est pas dépendante d'un autre Gcc.
Enfin ceci dit on s'en fout, vu que Gcc est indispensable sous Linux.
__________________
"S'il n'y a pas de solutions c'est qu'il n'y a pas de problème ..."
< mon devblog > ... < Lapinou Jumps ! - un jeu de plate-forme "vertical" avec un mignon petit lapin. >
thoduv est déconnecté   Réponse avec citation
Vieux 10/09/2006, 19h24   #9
Mollusk
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 1 037
Par défaut

Cool, merci ! Je pourrais utiliser ca sur le wiki francais s'il te plait ?

Sinon, pour le coup de pa_splash birslip me l'a fait remarquer et j'ai corrigé pour la prochaine mise à jour. Par contre, pourquoi remplacer les REG_IF ?
Mollusk est déconnecté   Réponse avec citation
Vieux 10/09/2006, 20h35   #10
KerneL
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: Annecy
Messages: 367
Voir les codes amis Wii
Par défaut

Citation:
Envoyé par Mollusk
Cool, merci ! Je pourrais utiliser ca sur le wiki francais s'il te plait ?

Sinon, pour le coup de pa_splash birslip me l'a fait remarquer et j'ai corrigé pour la prochaine mise à jour. Par contre, pourquoi remplacer les REG_IF ?
Pas de problèmes Mollusk, c'est d'autant plus efficace si c'est diffusé . Si tu veux une version anglaise pour ton site ça peut se faire aussi.

Je guetterais la prochaine mise à jour pour le makefile. Par contre pour les REG_IF,..., j'avais eu un probleme à l'installation (sur la version d'avant) et le fait des les remplacer avait tout remis en ordre. J'avais choppé l'astuce sur un post de Thoduv, vois avec lui pour de plus amples détails .
__________________
"Attack me if you dare, I will crush you!"
Portage de Squares 2 sur DS
KerneL est déconnecté   Réponse avec citation
Vieux 10/09/2006, 20h42   #11
birslip
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 353
Par défaut

J'ai installé PAlib ce matin sur mon pc (sous ubuntu) et il me semble avoir une des dernières version de libnds et je n'ai pas eu ce soucis de REG_IF,... juste celui du pa_splash. Sinon ton tuto est bien, c'est plus ou moins comme j'ai procédé et je n'ai aucun problèmes ! Il faudrait juste ajouter les logiciels utiles, comme desmume porté par thoduv. Par contre, tu utilises quoi pour convertir les images? gfx2gba? (c'est toujours un peu galère pour convertir... enfin plutôt chiant ) Ou bien tu connais un logiciel de plus pratique? Dommage que PAgfx soit en C#, donc pour windows...
__________________
Mon super blog!
birslip est déconnecté   Réponse avec citation
Vieux 10/09/2006, 20h44   #12
thoduv
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: ...
Messages: 1 464
Par défaut

Citation:
Envoyé par birslip
J'ai installé PAlib ce matin sur mon pc (sous ubuntu) et il me semble avoir une des dernières version de libnds et je n'ai pas eu ce soucis de REG_IF,... juste celui du pa_splash. Sinon ton tuto est bien, c'est plus ou moins comme j'ai procédé et je n'ai aucun problèmes ! Il faudrait juste ajouter les logiciels utiles, comme desmume porté par thoduv. Par contre, tu utilises quoi pour convertir les images? gfx2gba? (c'est toujours un peu galère pour convertir... enfin plutôt chiant ) Ou bien tu connais un logiciel de plus pratique? Dommage que PAgfx soit en C#, donc pour windows...
Le coupe de retirer le REG_ des macros c'était effectivement pour des vieilles versions, plus besoin de ca normalement.

Et puis on peut programmer en C#/.Net sous Linux avec Mono, donc peut être que quelqu'un pourrait porter PaGfx.
__________________
"S'il n'y a pas de solutions c'est qu'il n'y a pas de problème ..."
< mon devblog > ... < Lapinou Jumps ! - un jeu de plate-forme "vertical" avec un mignon petit lapin. >
thoduv est déconnecté   Réponse avec citation
Vieux 10/09/2006, 22h32   #13
KerneL
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: Annecy
Messages: 367
Voir les codes amis Wii
Par défaut

Pour les convertion j'ai utilisé gfx2gba mais il marche plus ou moins bien (je l'ai pas trop en main et la version linux dispo n'est même pas la derniere dispo sous windws ).

Par contre, j'avais regardé rapidement et l'excellent gbagraphics marche avec wine! Il y a peut être moyen d'en tirer quelquechose .
Sinon, en ce qui concerne la version ligne de commande de pagfx, à moins que le code n'utilise des éléments très spécifiques de c#, il doit être possible de le porter en java. Autrement il y a gimp qui exporte en .c et .h mais je ne me suis jamais penché sur le résulat.

Je vais faire un petit ajout pour DSmume et Dualis qui fonctionne avec Wine.
__________________
"Attack me if you dare, I will crush you!"
Portage de Squares 2 sur DS
KerneL est déconnecté   Réponse avec citation
Vieux 10/09/2006, 22h37   #14
thoduv
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: ...
Messages: 1 464
Par défaut

Desmume marche en NATIF sous Linux.
Il faut le récuperer depuis le CVS sur sourceforge: http://sf.net/projects/desmume puis le compiler.

Sinon tu as quelle version de Wine ? Parce que pour moi ni Dualis ni Gba Graphics ne marchent, ca serait une bonne nouvelle si ca marchait sur des version plus récentes ...

Et pour Gimp qui exporte en code C c'est pas vraiment utilisable facilement pour le dev Ds/Gba, par contre Gimp est un très bon outil (il gère les grilles, donc en réglant sur 8*8 ca devient très pratique).
__________________
"S'il n'y a pas de solutions c'est qu'il n'y a pas de problème ..."
< mon devblog > ... < Lapinou Jumps ! - un jeu de plate-forme "vertical" avec un mignon petit lapin. >
thoduv est déconnecté   Réponse avec citation
Vieux 10/09/2006, 22h58   #15
Mollusk
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 1 037
Par défaut

Je ne pense pas utiliser de fonctions trop farfelues dans PAGfx, juste les commandes des images pour extraire les pixels d'une image... Donc je suppose que ca doit pouvoir passer sous mono, mais c'est à confirmer.

L'avantage de PAGfx par rapport aux autres est que j'ai pu faire des fonctions PAlib qui marchent nickel avec, notamment pour les fonds....
Mollusk est déconnecté   Réponse avec citation
Vieux 10/09/2006, 22h59   #16
KerneL
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: Annecy
Messages: 367
Voir les codes amis Wii
Par défaut

Pour Wine j'utilise la dernière (Ubuntu me la tient à jour).
__________________
"Attack me if you dare, I will crush you!"
Portage de Squares 2 sur DS
KerneL est déconnecté   Réponse avec citation
Vieux 10/09/2006, 23h15   #17
Mollusk
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 1 037
Par défaut

Bah si tu peux le faire en anglais ca serait encore mieux, ouais Italien et Allemand aussi ou pas ? :/
Mollusk est déconnecté   Réponse avec citation
Vieux 10/09/2006, 23h30   #18
KerneL
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: Annecy
Messages: 367
Voir les codes amis Wii
Par défaut

L'anglais pas de problème, l'italien ça doit être jouable...par contre l'allemand ça risque pas, il faudra trouver un autre traducteur .
__________________
"Attack me if you dare, I will crush you!"
Portage de Squares 2 sur DS
KerneL est déconnecté   Réponse avec citation
Vieux 11/10/2006, 22h10   #19
quiewbee
 
Messages: n/a
Par défaut

Euh, je sais pas si c'est moi qui ai du mal, mais en fait, je n'arrive pas à compiler la librairie. Quand je tape sh install.sh dans le dossier PAlib, j'obtiens une erreur d'une vulgarité sans bornes

Pour info, je suis sous la dernière version d'Ubuntu, j'ai gcc 4.0 d'installé, make fonctionne correctement, les variables sont bien enregistrées...

------------------
quiewbee@quiewbee:~/Programmes/DevKitPro/PAlib$ sh install.sh
make clean -C lib/arm7
make[1]: entrant dans le répertoire « /home/quiewbee/Programmes/DevKitPro/PAlib/lib/arm7 »
clean ...arm7
make[1]: quittant le répertoire « /home/quiewbee/Programmes/DevKitPro/PAlib/lib/arm7 »
make clean -C lib/arm9
make[1]: entrant dans le répertoire « /home/quiewbee/Programmes/DevKitPro/PAlib/lib/arm9 »
clean ...PA_Game
make[1]: quittant le répertoire « /home/quiewbee/Programmes/DevKitPro/PAlib/lib/arm9 »
make -C lib/arm7
make[1]: entrant dans le répertoire « /home/quiewbee/Programmes/DevKitPro/PAlib/lib/arm7 »
command7.c
main.c
microphone7.c
ModFile.c
PA.c
Sound7.c
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/libgcc.a(_udivsi3.o): In function `__aeabi_uidiv':
(.text+0x0): multiple definition of `__udivsi3'
/home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(division.o):e:/projects/devkitPro/libnds/source/common/division.s: (.text+0x4): first defined here
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: Warning: type of symbol `__udivsi3' changed from 13 to 2 in /home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/libgcc.a(_udivsi3.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/libgcc.a(_divsi3.o): In function `__aeabi_idiv':
(.text+0x0): multiple definition of `__divsi3'
/home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(division.o):e:/projects/devkitPro/libnds/source/common/division.s: (.text+0x0): first defined here
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: Warning: type of symbol `__divsi3' changed from 13 to 2 in /home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/libgcc.a(_divsi3.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(clock.o) has EABI version 0, but target arm7.elf has EABI version 4
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: failed to merge target specific data of file /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(clock.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(microphone.o) has EABI version 0, but target arm7.elf has EABI version 4
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: failed to merge target specific data of file /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(microphone.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(touch.o) has EABI version 0, but target arm7.elf has EABI version 4
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: failed to merge target specific data of file /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(touch.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(interrupts.o) has EABI version 0, but target arm7.elf has EABI version 4
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: failed to merge target specific data of file /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(interrupts.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(biosCalls.o) has EABI version 0, but target arm7.elf has EABI version 4
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: failed to merge target specific data of file /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(biosCalls.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(division.o) has EABI version 0, but target arm7.elf has EABI version 4
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: failed to merge target specific data of file /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(division.o)
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(interruptDispatcher.o) has EABI version 0, but target arm7.elf has EABI version 4
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: failed to merge target specific data of file /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(interruptDispatcher.o)
collect2: ld returned 1 exit status
make[2]: *** [/home/quiewbee/Programmes/DevKitPro/PAlib/lib/arm7/arm7.elf] Erreur 1
make[1]: *** [build] Erreur 2
make[1]: quittant le répertoire « /home/quiewbee/Programmes/DevKitPro/PAlib/lib/arm7 »
make: *** [all] Erreur 2
/home/quiewbee/Programmes/DevKitPro/devkitARM/arm-eabi/bin/ar -cr lib/libpa7.a lib/arm7/build/command7.o lib/arm7/build/microphone7.o lib/arm7/build/ModFile.o lib/arm7/build/PA.o lib/arm7/build/Sound7.o
/home/quiewbee/Programmes/DevKitPro/devkitARM/arm-eabi/bin/ar -cr lib/libpa9.a lib/arm9/build/gba-jpeg-decode.o lib/arm9/build/PA.o lib/arm9/build/PA_Draw.o lib/arm9/build/PA_Keys.o lib/arm9/build/PA_Math.o lib/arm9/build/PA_Reco.o lib/arm9/build/PA_Sprite.o lib/arm9/build/PA_BgTiles.o lib/arm9/build/PA_BgLargeMap.o lib/arm9/build/PA_Mode7.o lib/arm9/build/PA_Text.o lib/arm9/build/PA_Text8bit.o lib/arm9/build/PA_Interrupt.o lib/arm9/build/PA_Palette.o lib/arm9/build/palib.o lib/arm9/build/Sound9.o lib/arm9/build/PA_16c.o lib/arm9/build/disc_io.o lib/arm9/build/gba_nds_fat.o lib/arm9/build/io_efa2.o lib/arm9/build/io_fcsr.o lib/arm9/build/io_m3cf.o lib/arm9/build/io_m3sd.o lib/arm9/build/io_mpcf.o lib/arm9/build/io_nmmc.o lib/arm9/build/io_sccf.o lib/arm9/build/io_scsd.o lib/arm9/build/io_sccf.o lib/arm9/build/PA_API.o lib/arm9/build/PA_GBFS.o lib/arm9/build/PA_Gif.o lib/arm9/build/PA_3D.o lib/arm9/build/palib.o lib/arm9/build/keyboard.raw.o lib/arm9/build/keyboard.map.o lib/arm9/build/keyboard.pal.o lib/arm9/build/PA_Keyboard.o lib/arm9/build/PA_IA.o lib/arm9/build/PA_IA.o lib/arm9/build/PA_FS.o lib/arm9/build/PA_Sound.o lib/arm9/build/PA_Timer.o lib/arm9/build/PA_Wifi.o lib/arm9/build/PA_SplashEyes.o lib/arm9/build/PA_SplashBlue.o lib/arm9/build/dgif_lib.o lib/arm9/build/gif_err.o lib/arm9/build/gif_font.o lib/arm9/build/gifalloc.o lib/arm9/build/quantize.o
/home/quiewbee/Programmes/DevKitPro/devkitARM/arm-eabi/bin/ar: lib/arm9/build/gba-jpeg-decode.o: Aucun fichier ou répertoire de ce type
make: *** [archive] Erreur 1

--------------------

J'avais prévenu que c'était pas beau
Bon, d'après mes maigres connaissances, la première erreur serait :
/home/quiewbee/Programmes/DevKitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.real: ERROR: Source object /home/quiewbee/Programmes/DevKitPro/libnds/lib/libnds7.a(clock.o) has EABI version 0, but target arm7.elf has EABI version 4
Mais je vois pas trop ce que mon petit ordi essaye de me dire...

Si quelqu'un avait ne serait-ce qu'une petite idée, je lui en serait infiniment reconnaissant
  Réponse avec citation
Vieux 11/10/2006, 22h16   #20
Mollusk
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 1 037
Par défaut

Bon, déjà, faut que je corrige le wiki, mais le coup de l'install c'est réglé, il suffit juste d'ajouter les variables d'environnement. Plus besoin de recompiler la lib, elle est précompilée pour vous
Mollusk est déconnecté   Réponse avec citation
Vieux 12/10/2006, 18h09   #21
quiewbee
 
Messages: n/a
Par défaut

J'ai donc tout supprimé et recommencé la manip (sans cette fois chercher à compiler la librairie), puis j'ai essayé de faire un make sur un exemple (dossier exemples, text, helloworld) et encore une fois, j'ai une ribambelle d'erreur sous cette forme :

ERROR: Source object home/......../lib/libnds9.a(video.o) has EABI version 0, but target build.elf has EABI version 4

Pourtant, j'ai bien les variables d'environnement correctement placées... Est-ce que j'aurais par hasard une version de l'un des progs pas récente ? J'ai téléchargé les trois du début du tuto...

Merci d'avance
  Réponse avec citation
Vieux 12/10/2006, 18h12   #22
thoduv
Membre confirmé
 
Date d'inscription: 10/11/2005
Localisation: ...
Messages: 1 464
Par défaut

Citation:
Envoyé par quiewbee
J'ai donc tout supprimé et recommencé la manip (sans cette fois chercher à compiler la librairie), puis j'ai essayé de faire un make sur un exemple (dossier exemples, text, helloworld) et encore une fois, j'ai une ribambelle d'erreur sous cette forme :

ERROR: Source object home/......../lib/libnds9.a(video.o) has EABI version 0, but target build.elf has EABI version 4

Pourtant, j'ai bien les variables d'environnement correctement placées... Est-ce que j'aurais par hasard une version de l'un des progs pas récente ? J'ai téléchargé les trois du début du tuto...

Merci d'avance
Mauvaise libnds, retélécharge la plus récente.
__________________
"S'il n'y a pas de solutions c'est qu'il n'y a pas de problème ..."
< mon devblog > ... < Lapinou Jumps ! - un jeu de plate-forme "vertical" avec un mignon petit lapin. >
thoduv est déconnecté   Réponse avec citation
Vieux 12/10/2006, 18h18   #23
Mollusk
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 1 037
Par défaut

reprends tous devkitpro meme
Mollusk est déconnecté   Réponse avec citation
Vieux 12/10/2006, 19h28   #24
quiewbee
 
Messages: n/a
Par défaut

Hopla ! J'ai installé la version 20060719 de la libnds et la release 19b de devkitARM. Je n'ai plus les vilains messages d'erreur, mais j'en ai un tout nouveau

Vous me direz, ça progresse

en tentant de faire un make toujours sur un des examples, j'obtients ceci...
make[1]: *** Pas de règle pour fabriquer la cible « /....../DevKitPro/libnds/include/nds/arm9/CP15.h », nécessaire pour « main.o ». Arrêt.
make: *** [build] Erreur 2


Suis-je sur la bonne voie, celle qui me conduira vers le sacré Graal ?

En tout cas, c'est super cool de m'aider tous les deux
  Réponse avec citation
Vieux 12/10/2006, 20h00   #25
Mollusk
Membre confirmé
 
Date d'inscription: 10/11/2005
Messages: 1 037
Par défaut

là je comprends pas du tout par contre :s il n'y a rien d'autre d'affiché ? :s
Mollusk est déconnecté   Réponse avec citation
Réponse

Liens sociaux

Publicité



Utilisateurs regardant la discussion actuelle : 1 (0 membre(s) et 1 invité(s))
 
Outils de la discussion
Modes d'affichage

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 02h34.


Édité par : vBulletin® version 3.7.2
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Tous droits réservés.
Version française #16 par l'association vBulletin francophone
Design par Ass-Itch, DJP et Dr.Vince