Bonjour à tous,
J'ai un ami qui se pose une question existencielle, et comme il n'est pas inscrit à LinuxFr, je pose la question pour lui.
Mon ami à acheté un code de calcul scientifique, écrit en Fortran 90. Ce code est tout ce qu'il y a de plus fermé, il ne possède que l'exécutable, sans les sources. Mais justement, ce code donne des résultats bizarres dans certains cas, et mon ami voudrait bien pouvoir décompiler le binaire (enfin essayer), pour jeter un oeil aux sources et voir pourquoi le code déraille.
Je sais que ce n'est pas facile, mais comment peut-on décompiler un programme fortran 90 sous linux ?
Merci,
Darckense, par intérim
# Licence ?
Posté par jjl (site web personnel) . Évalué à 3.
Si je ne me trompe pas, en France (Europe?) on peut le faire pour des raisons d'interop, mais je ne vois rien de tel dans ce que tu nous decrit.
Cette situation semblerai plutot impliquer un rapport de bug.
voir http://www.avocats-publishing.com/mot.php3?id_mot=131(...) et la licence du soft.
[^] # Commentaire supprimé
Posté par Anonyme . Évalué à 3.
Ce commentaire a été supprimé par l’équipe de modération.
[^] # Re: Licence ?
Posté par jjl (site web personnel) . Évalué à 2.
Dans un but d'interop, d'accord, c'est bien specifié dans mon message et dans la reference que j'ai donné.
Par contre dans un but d'étude je ne crois pas. En tout cas je n'ai jamais rien trouvé qui l'indique. Dans son cas, il ne semble pas du tout s'agir d'interop, mais bien d'étude pour rechercher un bug.
voir aussi http://www.droit-ntic.com/news/afficher.php?id=68(...)
[^] # Commentaire supprimé
Posté par Anonyme . Évalué à 2.
Ce commentaire a été supprimé par l’équipe de modération.
[^] # Re: Licence ?
Posté par Darckense (site web personnel) . Évalué à 1.
Enfin, pour l'instant. On ne sais pas ce que le futur nous réserve...
# Re:
Posté par kd . Évalué à 2.
Une fois compilé, comme tout code source, ton programme devient un exécutable, un binaire, un fichier qui ne contient que des instruction processeur. Autrement dit, si tu désassemble ton fichier binaire, tout ce que tu auras, c'est de l'assembleur, et rien d'autre. Aucune chance d'avoir le code source Fortran à partir du binaire aussi simplement, malehureusement.
Donc, pour désassembler (j'espère que ton ami sait lire de l'assembleur), tu peux utiliser des outils génériques comme objdump. man objdump pour plus de détails. Il doit y avoir des désassembleur qui font plus de choses, mais je n'en connais pas vu que j'utilise très rarement cet outil.
[^] # Re: Re:
Posté par Jylam / jylam.lnxsce (site web personnel) . Évalué à 2.
Desassembler tu auras de l'assembleur, oui.
Par contre, un decompileur essaye de retrouver des patterns connues pour reecrire le programme dans un language de haut niveau. Ca marche tres tres moyennement (bon ok c'est de la merde), mais ca existe.
Quelques exemples sur http://www.autistici.org/uncc/examples.php(...) , mais evidement, il faut pas en demander trop. (Et honnêtement je vois pas bien l'interet, la sortie etant a peine plus claire que de l'assembleur)
[^] # Re: Re:
Posté par Darckense (site web personnel) . Évalué à 1.
Bon, autrement dit, pour trouver pourquoi ca marche pas, c'est pas gagné !
[^] # Logiciel Libre
Posté par Potato . Évalué à 1.
# Bug report
Posté par jerome (site web personnel) . Évalué à 3.
J'imagine que "ton ami" pourra obtenir de l'aide auprès d'eux ...
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.