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
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
- 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
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 327
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
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 327
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