Oui, il ne suffit pas de changer le nom du compilateur, il faut aussi adapter les options de compilation, c'est à dire modifier le Makefile comme suit:
Mais ce n'est pas tout, si on tente alors un 'make all', ça plante ... parce que la fonction 'second' (fichier second.f) n'est pas portable (ainsi qu'il est signalé dans la doc.); il faut la remplacer par:Code:
1
2
3
4
5
6F90 = g95 F90FLAGS = -O3 -fbackslash -ffree-form LD = g95
c.-à-d.: changer la definition de 'T' en 'T(2)' et 'ETIME_(T)' en 'ETIME(T).Code:
1
2
3
4
5
6
7
8
9 FUNCTION SECOND () DOUBLE PRECISION SECOND, T(2) ! Set ETIME to either ETIME or ETIME_ . SECOND = ETIME(T) RETURN END
Et là, le 'make all' fonctionne (j'ai testé dans le repertoire 'f90'), enfin, à quelques:
avertissements qui sont possiblement sans conséquences.Code:Warning (155): Inconsistent types (TYPE(mp_realm)/TYPE(mp_real)) in actual argument lists
La compilation des différents exemples met un certain temps mais tout semble bien se dérouler; j'ai vérifié que le programme test 'tmpmod90' génère bien des sorties prévues (données dans le fichier 'tmpmod.out' fourni).
Reste à apprendre à maitriser la bête, mais la doc et les exemples fournis semblent assez complets, du moins à première vue.
Bon courage et bonne continuation.