#1 Le 14/11/2008, à 15:05
- matifou
[Résolu] cmt interpréter message bug de g77
Bonjour
j'essaie de compiler deux petits programme en fortran trouvé sur le net: urcdist.f et urcrouts.f (http://econ.queensu.ca/faculty/mackinnon/numdist/). Le premier marche parfait, malheureusement, le deuxième, (une simple modif du premier qui execute le programme en ligne de commande plutot qu'interactif) ne passe pas à la compilation.
J'ai le message:
$ g77 urcrouts.f
/usr/lib/gcc/i486-linux-gnu/3.4.6/../../../../lib/libfrtbegin.a(frtbegin.o): In function `main':
(.text+0x35): undefined reference to `MAIN__'
collect2: ld a retourné 1 code d'état d'exécution
Mais je sais pas trop ce qu'il veut dire... comment l'interpréter, y'a-t-il une variable non définie dans le code? Y'a-t-il un débugger pour g77 (j'arrive pas avec -g)? Et le (.text+0x35) est-il une indication de ligne? Si oui comment le comprendre?
merci pour votre aide, vous me ferez gagner un précieux temps!
Dernière modification par matifou (Le 14/11/2008, à 20:09)
Hors ligne
#2 Le 14/11/2008, à 17:58
- ludovic889
Re : [Résolu] cmt interpréter message bug de g77
salut,
mckinnon, unit root, je connais !
il semble que ce soit une erreur de librairie non trouvée. tu peux suivre la discussion http://coding.derkeiler.com/Archive/For … /0539.html et étudier la seconde réponse du thread. Tu feras un truc comme
g77 urcrouts.f -L<adresse d'une librairie>
je pense que tout vient de f2c (voir le readme de mckinnon)
à suivre
Ce n'est pas grave de ne pas avoir l'heure si on a le temps.
Hors ligne
#3 Le 14/11/2008, à 18:38
- matifou
Re : [Résolu] cmt interpréter message bug de g77
Salut
Effectivement c'est McKinnon... tu connais? marrant ça! Merci pour ton message! Malheureusement ça ne m'éclaire pas complètement, si je regarde le lien que tu as mis il doit attacher quatre bibliothèques pour lancer un hello world... c'est hoorible, dis moi pas que je dois faire ça?
Je n'ai pas trouvé vers quelle bibliothèque il faudrait lier le truc... as-tu une idée plus précise?
La solution par f2c puis gcc devrait être évitée, mon but est de l'intégrer dans R, qui dispose d'un compilateur fortan.
Mais le plus troublant c'est que la compilation marche pour le fichier urcdist.f mais pas pour urcrouts.f, qui est une petite modification (en fait le fichier devient une subroutine... peut-être pour qu'il faut alors appeler une commande différente?)
Merci beaucoup de ton aide, mes efforts suivent pour l'instant une marche aléatoire...
Hors ligne
#4 Le 14/11/2008, à 19:00
- ludovic889
Re : [Résolu] cmt interpréter message bug de g77
salut,
je ne suis pas un super spécialiste de fortran, alors faut être compréhensif
sinon, en compilant, je trouve ton erreur. en fait je pense que c'est normal: il n'y a qu'une procédure dans le fichier et ça fout la m*rde !
en faisant
g77 -c urcrouts.f
tu demandes de compiler et tu obtiens un fichier objet qui contient ta procédure. c'est sûrement dans cette voie qu'il faut poursuivre pour intégrer dans R (je ne sais pas comment faire ensuite). en regardant http://www.stat.umn.edu/~charlie/rc/, c'est à R de faire la compilation ....
à suivre !
Ce n'est pas grave de ne pas avoir l'heure si on a le temps.
Hors ligne
#5 Le 14/11/2008, à 20:09
- matifou
Re : [Résolu] cmt interpréter message bug de g77
D'accord j'ai compris.... je pensais qu'il était possible de le lancer depuis le terminal aussi.
Je vais me concentrer sur le code R alors... (pour l'instant évidemment 4a marche pas).
Merci beaucoup pour ton aide!
PS: tu es par hasard contributeur sur wikipedia sous un pseudo très proche?
Hors ligne
#6 Le 14/11/2008, à 21:09
- ludovic889
Re : [Résolu] cmt interpréter message bug de g77
oups démasqué !
oui c'est bien moi !
Ce n'est pas grave de ne pas avoir l'heure si on a le temps.
Hors ligne