Fonctions intrinseques Fortran et g++ [Résolu/Fermé]

Signaler
-
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
-
Bonjour,

Je viens vous demander de l'aide apres de longues heures de recherches!!!

Je suis sur une machine Sun Sparc Solaris 10 et je developpe du code en fortran 90.
Je compile avec f90 de sunStudio 12 et je fais l'edition de lien avec g++ 3.4.2.
En ajoutant les librairies dynamiques -lF77 -lM77 -lfai2 -lfsu -lsunmath, je n'ai pas acces a certaines fonctions intrinseques fortran comme par exemple la fonction index.

Quelle est la lib de g++ qui contient les fonctions intrinseques de Fortran autre que F77, M77 et V77?

Merci beaucoup par avance.

9 réponses

Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
hello
peut-être faudrait-il préciser à g++ d'aller chercher des librairies dans /opt/SUNWspro/lib avec -L/opt/SUNWspro/lib et spécifier la librairie qui contient index avec -l
Merci pour ta reponse.

Justement, je n'arrive pas a trouver cette librairie.
J'ai cherche dans les docs sunstudio 12 et GCC, mais rien du tout!!!
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
/opt/SUNWspro/lib est un répertoire contenant des libs, qu'y a-t-il dedans ?
ls /opt/SUNWspro/lib
Dans le repertoire /opt/SUNWspro/lib, il y a :
CC4
CCios
bin
collector.jar
dbxrc
debugging.so
er.rc
libCrun.so
libCstd.so
libF77.so.2
libF77.so.3
libF77.so.4
libF77_mt.so.2
libF77_mt.so.3
libF77_mt.so.4
libFposix.so.1
libFposix_c.so.1
libM77.so.2
libV77.so
libV77.so.2
libV77.so.3
libcollectorAPI.so
libcollectorAPI.so.1
libcx.so.1
libdbx_agent.so
libf77compat.so
libf77compat.so.1
libfai.so
libfai.so.1
libfai.so.2
libfai.so.3
libfai2.so
libfai2.so.1
libfai2.so.2
libfai2.so.3
libfcollector.so
libfmaxlai.so
libfmaxlai.so.1
libfmaxvai.so
libfmaxvai.so.1
libfminlai.so
libfminlai.so.1
libfminvai.so
libfminvai.so.1
libfprodai.so
libfprodai.so.1
libfsu.so
libfsu.so.1
libfsumai.so
libfsumai.so.1
libfui.so
libfui.so.1
libfui.so.2
libgc.so
libgc.so.1
libiostream.so
libm9x.so
libm9x.so.0
libsunmath.so
libsunmath.so.1
libsunperf.so
libsunperf.so.7
libtha.so
libtha.so.1
locale
palettes
rtcaudit.so
rw7
sparc
sparcfmaf
sparcvis
sparcvis2
stlport4
tools_svc_mgr
v7
v8
v8a
v8plus
v8plusa
v8plusb
v9
v9a
v9b
xds

Ces librairies sont reconnues par mon edition de lien, car je n'ai pas de message de librairie inconnue.
Aucune ne contient les fonctions lies a la gestion des chaines, notamment, index!!!

Une idee?

Merci beaucoup
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
libf* sont les librairies fortran, es-tu sûr qu'aucune ne contient index ?
vérifier avec
nm libf*|grep index
En fait, dans la lib fsu, j'ai effectivement la fonction index sous la forme __f_index et __f_index_8.

Quand je fait l'edition de lien, le compilo recherche le symbole __f_index_a.

Comment cela se fait-il???

Merci beaucoup pour le nm !!!
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
hypothèse, sachant que les lib*.a sont des libs statiques et les .so dynamiques, est ce qu'il chercherait une routine index statique ?
Merci beaucoup!!!

C'etait effectivement un coup librairies statiques/dynamiques.
En ajoutant l'option -Bstatic a mon edition de lien, tout fonctionne!!!

Vraiment un grand merci.
Messages postés
18120
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
12 mai 2020
4 847
tant mieux
c'est du pot pour mon hypothèse...