Probleme en fortran 90

Fermé
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008 - 7 janv. 2008 à 11:03
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 8 janv. 2008 à 12:26
Bonjour,
Je travaille en fortran 90, mon programme compile, mais quand je lance l'executable j'ai un message d erreur:
forrtl: severe (168): Program Exception - illegal instruction
Image PC Routine Line Source
libpthread.so.0 00002AF1F1E3D130 Unknown Unknown Unknown
a.out 00000000007958C0 Unknown Unknown Unknown
Quest ce que sa veut dire? que dois je faire ?
Merci d'avance pour vos conseils, et bonne anne a tous
Matthieu

11 réponses

juanpablo Messages postés 142 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 16 juin 2008 10
7 janv. 2008 à 11:22
salut

ton code branche à un endroit où il n'y a pas d'instruction légale. c'est dans une lib de thread donc si tu lances un thread l'adresse est incorrecte , rajoutes un LOC peut etre (pour des appels win32 ça marche )
0
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008
7 janv. 2008 à 11:26
Merci pour la reponce, mais je suis debutant en fortran donc je ne la comprend pas trop est ce que tu peu s il te plai me l'expliquer
Merci d'avance
0
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008
7 janv. 2008 à 11:28
J ai mis une fonction en f77 dans mon programme en f90 est ce que c'est possible que l'erreur vienne de la?
0
juanpablo Messages postés 142 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 16 juin 2008 10
7 janv. 2008 à 11:34
je ne pense pas je le fais régulierement(ftn77 salford, ftn90/95 silverfrost)
0
juanpablo Messages postés 142 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 16 juin 2008 10
7 janv. 2008 à 11:31
re

c'est une hypothese n'ayant aucune idée sur ton programme, si tu peux le résumer ce serait mieux...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008
7 janv. 2008 à 11:36
dans le programme en f90 je veut chercher le zero d'une fonction, donc pour sa je fait appel a la fonction ZBRENT que j'ai en f77. ZBRENT fait appel a une autre fonction (celle dont je dois trouver le zero) qui est en f90.
0
juanpablo Messages postés 142 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 16 juin 2008 10
7 janv. 2008 à 11:43
ok c'est pas un pb de thread mais c'est bien un pb de passage d'adresse a ta fonction ZBRENT

ce que je disais c'est d'essayer de mettre LOC(nom) au lieu de nom en argument
0
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008
7 janv. 2008 à 11:52
En mettant LOC(nom) dans ZBRENT, sa compile toujours mais en faisant a.out j'ai maintenant un nouveau message d'erreur:matthieu@theo1-pc8:/work2/matthieu/DFT/prog> a.out
forrtl: severe (168): Program Exception - illegal instruction
Image PC Routine Line Source
Unknown 00007FFF5CC7BFBA Unknown Unknown Unknown
0
juanpablo Messages postés 142 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 16 juin 2008 10
7 janv. 2008 à 12:09
bizarre ... autre piste dans ton bloc progral où tu appelles ZBRENT as tu declaré ta fonction ?


program prg

external nomf
real nomf ! ou autre type

call ZBRENT ( ... nomf ...)

end
0
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008
7 janv. 2008 à 12:22
j ai declarer les deux fonction en double precision:
double precision ::gamma11zero
double precision ::gamma11cste,gamma11trouve,depart,arrive,zero,erreur,ZBRENT
0
juanpablo Messages postés 142 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 16 juin 2008 10
7 janv. 2008 à 12:38
reste juste le external à voir...
0
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008
7 janv. 2008 à 12:41
J'ai essayer aussi le external mais toujour le meme probleme
0
juanpablo Messages postés 142 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 16 juin 2008 10
7 janv. 2008 à 12:45
le probleme est aiileurs alors, mais je ne vois plus trop
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
7 janv. 2008 à 14:12
salut. J'ai pas trop d'idée, mais je te conseil d'essayer :
de supprimer l'appel à la fonction f77 voir si ça viens de là
De faire un tout autre pogramme ne f90 pour voir si ça ne viendrai pas d'une mauvaise installation du compilateur.
Essayer de voir d'où viens le problème précisement avec un debuggeur
0
matthieuabristol Messages postés 9 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 janvier 2008
7 janv. 2008 à 18:01
c'est quoi un debugger, ou est ce que je peu en trouver?
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
8 janv. 2008 à 12:26
un debugueur, c'est un programme qui execute ton programme et regarde dans quel fonction, quel ligne est emise l'exeption.
si tu compile avec gcc (ou gfortran) le debug c'est "gdb" et pour l'utiliser au mieu il faut mettre l'option -g lors de la compilation.
Si tu n'as pas gcc, cherche sur le net
0