Bonjour,

J'ai récupéré un code fortran, que je dois interfacer avec mon propre programme C++. Après un certain nombre de recherche sur Internet, j'ai finalement compris comment cela doit se faire. Cependant, je n'arrive à rien car il semblerait qu'aucune fonction "write" ne compile!
Je m'explique. Je compile mes .cpp en .o avec g++ .Pas de problème.
Je compile mes fortranX.f en .o avec f77. Pas de problème.
Je lie tout ça avec g++, et j'obtiens le message d'erreur suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
fortranX.o: undefined reference  to '__s_wsFe_pv'
fortranX.o: undefined reference  to '__do_f_out_pv'
fortranX.o: undefined reference  to '__e_wsfe_pv'
Et quand je mets les "write" en commentaires, cela compile parfaitement. Mais cela ne sert à rien puisque j'ai besoin des writes (ce ne sont pas que des sorties écrans). Ils m'ont l'air syntaxiquement correct pourtant (ce qui ne veux pas dire grand chose, j'ai lu ma première ligne de fortran avant-hier ) Ils sont presque tous de la forme:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
if(x.gt.0) write(nout,9821)
 9821 format(/48h exit qpdf2. inform=0 after sensitivity analysis)
Comme les personnes qui m'ont donné le code assure qu'il fonctionne, j'en ai déduits qu'il me manque une librairie ou une option de compilation. Eux utilisent
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 isort -O -c -w -openmp -openmp_report2 -fpp2 -tpp7 -pc64 -i4 -prec_div
Moi, je n'ai que gcc/g++ et f77/f90 à ma disposition car isort est payant.
Est-ce que quelqu'un aurait déjà vu cette erreur? Au bureau, tout le monde sêche sur le problème depuis déjà deux jours, et je commence à trouver le temps long

Merci d'avance
Drude