FD2pragma problèmes
15 sujets de 1 à 15 (sur un total de 27)
- 1
- 2
-
Comme GuruMed est HS en ce moment et que j’étais en plein fil avec un certain Alex au sujet du fichier « inline/muimaster.h » pour gcc ou vbcc, je me permets de poursuivre ici…
Si Alex passe…
J’ai essyayé FD2pragma pour obtenir ce fichier pour vbcc avec les options de la doc… (idem pour gcc). Celui-ci est bien créé mais avec une erreur… (dans les 2 cas )
Pourrais-tu (toi ou un autre) me filer ce fichier (68k) pour vbcc et gcc pour que je puisse voir la différence ?
Ce message n’est pas à sa place, désolé.
Modération par SteaG : sujet déplacé en Développement
Salut Amifred, je suis là
les inlines sont différents entre GCC et VBCC, d’après ce que je vois les inlines muimaster pour VBCC se trouve dans le répertoire devkits:compilers/vbcc/cross/0.8g/targets/m68k-amigaos/include/inline (il se nomme muimaster_protos.h).
Pour GCC il n’existe pas, mais peux tu indiquer les options que tu as utilisées ainsi que les erreurs dont tu parles ?
PS: perso je n’utilise pas MUI donc j’ai pas ces fichiers sous la main, sinon je te les aurais envoyés avec joie…
Merci les gars…
Voici la commande que j’ai tapée:
15.Ram Disk:> fd2pragma muimaster_lib.fd CLIB muimaster_protos.h TO inline SPECIAL 70
SourceFile: muimaster_lib.fd
Warning 46 : Missing the types definition file. Using internal defaults.
Warning 68 in line 4: Name of argument 0 conflicts with keyword ‘class’.
ResultFile: inline/muimaster_protos.h
15.Ram Disk:>
Même message avec l’option TO proto SPECIAL 38
J’essaie ainsi de régler mes problèmes d’inline que tu m’avais suggérés StAn…
J’ai fait ça avec le CLIB de vbcc pour inline et proto de VBCC et avec le CLIB de gcc pour avoir un inline et un proto pour GCC…
et voilà ce que donne la compile de disko7.c avec gcc:
gcc -Wall -O2 -noixemul -Iinclude -c DisKo7.c
DisKo7.c: In function `DisKoNew’:
DisKo7.c:158: warning: suggest parentheses around assignment used as truth value
DisKo7.c: In function `DisKoDispose’:
DisKo7.c:201: warning: passing arg 3 of `DoSuperMethodA’ from incompatible pointer type
DisKo7.c: In function `DisKoSet’:
DisKo7.c:212: warning: suggest parentheses around assignment used as truth value
DisKo7.c:226: warning: passing arg 3 of `DoSuperMethodA’ from incompatible pointer type
DisKo7.c: In function `OpenMainWindow’:
DisKo7.c:352: excess elements in struct initializer
DisKo7.c:352: (near initialization for `_tags’)
DisKo7.c:352: invalid initializer
DisKo7.c:377: excess elements in struct initializer
DisKo7.c:377: (near initialization for `_tags’)
DisKo7.c:377: invalid initializer
DisKo7.c:379: excess elements in struct initializer
DisKo7.c:379: (near initialization for `_tags’)
DisKo7.c:379: invalid initializer
make: *** [DisKo7.o] Error 1
Done.
Et avec VBCC:
vc +aos68k -c99 -DNO_INLINE_STDARG -D__MORPHOS_NODIRECTCALL -c DisKo7.c
> return (DoSuperMethodA(cl, obj, msg));
warning 85 in line 201 of « DisKo7.c »: assignment of different pointers
> return (DoSuperMethodA(cl, obj, msg));
warning 85 in line 226 of « DisKo7.c »: assignment of different pointers
> cl_disko = MUI_CreateCustomClass(NULL, MUIC_Group, NULL, sizeof(struct DisKoDa
warning 85 in line 468 of « DisKo7.c »: assignment of different pointers
vc +aos68k -o DisKo7 DisKo7.o vbcc68k/cdmanager.o -lamiga
Done.
Salut Amifred,
Warning 46 : Missing the types definition file. Using internal defaults.
Je pense que ton problème est là, lorsque tu tapes la commande
fd2pragma
CLIB TO... où lorsque
et sont des noms de fichiers SANS chemin cela signifie que tu les prends dans le répertoire courant… La question fatidique : as-tu copié auparavant ces deux fichiers dans ton RAMDisk ?
Donc ces deux fichiers qui ne peuvent PAS être générés tu les trouvent dans l’archive MUI (le fichier CLIB se trouve dans le répertoire CLIB) ou dans les répertoires de ton installation de ton compilo.
Ce message d’erreur parle en fait du fichier fd2pragma.types qui devrait se trouver dans le même répertoire que fd2pragma. Il se trouve normalement dans vbcc:bin/. Si tu ne l’as pas, récupère l’archive complète de fd2pragma sur Aminet.
Pour les autres problèmes, euh… Faudrait que je regarde les sources, tout ça. Corto ?
Ok, StAn
J’vais voir ce fichier de plus près…
Et lui trouver sa place…
J’avais tout mis en ram, histoire de maîtriser un max….
;°)
Et puis n’embête pas Corto avec ça… Car je pense que je suis le seul coupable… Parce que j’ai pu une fois le compiler avec vbcc, avec deux warning seulement… Et également avec gcc… Mais en installant les mises à jour de vbcc, j’ai mis la grouille avec golded…Et croyant bien faire j’ai réinstallé le kit C/C++ de l’éditeur… Et là ce fut pire…
Le seul truc qui n’fonctionne pas dans les Disko, depuis leur apparition, c’est les hook… Capt’ain…
Chez moi (68k)…
Rien ne se passe…
Merci pour le coup d’main
Mais en installant les mises à jour de vbcc, j’ai mis la grouille avec golded…Et croyant bien faire j’ai réinstallé le kit C/C++ de l’éditeur… Et là ce fut pire…
Pour installer les MAJ de vbcc je pense que le mieux est de ne pas utiliser d’installateur ou autre (je sais pas si y en, j’ai jamais utilisé vbcc) mais bien de chercher où se trouvent chaque fichier dans l’install de GoldED et de les recopier un à un par dessus. En même temps, moi GoldED, il m’installe vbcc0.8g y a une version plus récente ?
Si tu veux réinstaller le kit C/C++ je te conseille auparavant de supprimer tout le répertoire DEVKITS: ou mieux de désinstaller le kit C/C++, sinon GED se rend compte que tu as déjà installé le kit C/C++ et il ne refait pas tout !
Normalement avec GoldED ça marche « out of the box ». Si tu passe pas par le Shell plutot que par l’interface de GED, avant de lancer la compilation n’oublies pas de faire un
ccselect "vbcc/classic"
pour utiliser vbcc 68k, ou
ccselect "gcc/classic"
pour gcc (tu peux trouver ces alias de compilos dans le fichier de config DEVKITS:devkits.config (fichier xml que tu peux modifier pour ajouter de nouveaux compilateurs si tu veux)
Alex toujours présent…
J’avais sûrement pas mis les fichiers où il fallait, les assign avaient changés, un vrai sac de noeuds…
Et j’avais essayé d’avoir un Include: commun à tous les compil…
J’ai réinstallé le dernier kit (V41 je crois) avec vbcc0.8h.
Oui a un moment j’avais compilé dans une fenêtre CLI… mais golded me manquait…
Donc dans l’état actuel… j’ai les problèmes évoqués précédemment… Et je pense que c’est dû à cette fameuse inline/muimaster_protos.h … C’est du moins ce que m’avait suggérer StAn aux vues de mes problèmes …
Merci pour l’coup d’main
Alex ? StAn ?
Toujours là ?
J’ai refait la manip fd2pragma et j’ai vérifier que le fichier fd2pragma.types était bien ouvert avec SnoopDos.
Il ne me reste plus que ce message:
Warning 68 in line 4: Name of argument 0 conflicts with keyword ‘class’.
SnoopDos ne m’indique aucune erreur de lecture ou d’écriture…
Au niveau compile:
avec gcc: mêmes résultats…
avec vbcc:
vc +aos68k -c99 -DNO_INLINE_STDARG -D__MORPHOS_NODIRECTCALL -c DisKo7.c
> return (DoSuperMethodA(cl, obj, msg));
warning 85 in line 201 of « DisKo7.c »: assignment of different pointers
> return (DoSuperMethodA(cl, obj, msg));
warning 85 in line 226 of « DisKo7.c »: assignment of different pointers
> cl_disko = MUI_CreateCustomClass(NULL, MUIC_Group, NULL, sizeof(struct DisKoDa
warning 85 in line 468 of « DisKo7.c »: assignment of different pointers
> CloseLibrary((struct Library *)UtilityBase)
warning 59 in line 484 of « DisKo7.c »: ) expected
> CloseLibrary((struct Library *)UtilityBase)
error 76 in line 484 of « DisKo7.c »: identifier expected
aborting…
unexpected end of file
1 error found!
vbccm68k : erreur code 20
vbccm68k -quiet « DisKo7.c » -o= « T:t_13_0.asm » -c99 -DNO_INLINE_STDARG -D__MORPHOS_NODIRECTCALL -O=1 -Ivincludeos3: failed
make: *** [DisKo7.o] Error 20
Done.
Je reviens presque à mon point de départ… le truc avec UtilityBase et la remarque de StAn qui en avait suivi…
On s’accroche
Que dire…
Je n’pense pas avoir touché à quoique ce soit, à part un reboot…
Vbcc compile le disko7, maintenant:
vc +aos68k -c99 -DNO_INLINE_STDARG -D__MORPHOS_NODIRECTCALL -c DisKo7.c
> return (DoSuperMethodA(cl, obj, msg));
warning 85 in line 201 of « DisKo7.c »: assignment of different pointers
> return (DoSuperMethodA(cl, obj, msg));
warning 85 in line 226 of « DisKo7.c »: assignment of different pointers
> cl_disko = MUI_CreateCustomClass(NULL, MUIC_Group, NULL, sizeof(struct DisKoDa
warning 85 in line 468 of « DisKo7.c »: assignment of different pointers
vc +aos68k -o DisKo7 DisKo7.o vbcc68k/cdmanager.o -lamiga
Done.
3 petits warning 85…
gcc… toujours pas…
Oui amifred, je suis toujours là
Les fichiers inlines sont différents pour GCC et pour VBCC, les options à passer sont différentes (je n’ai pas accès à mon A1 en ce moment, mais je vérifierais et te dirais ça ce soir ou demain) c’est normal que ça marche pas si tu mets les mêmes…
Pour ton problème de warning, d’après ce que je lis ce n’est pas très grâve, il doit te manquer un petit cast, je ne pense pas que ce soit bien grâve, tu peux laisser comme ça si tu veux pas chercher à corriger le problème (problème qui ne vient pas de ton compilo, mais du code que tu essayes de compiler…)
15 sujets de 1 à 15 (sur un total de 27)
- 1
- 2
- Vous devez être connecté pour répondre à ce sujet.
› Forums › AmigaOS, MorphOS et AROS › Développement › FD2pragma problèmes