Vous êtes sur la page 1sur 10

Compilateurs Fortran gratuit

Il ya un certain nombre de libres Fortran 77 et 90 compilateurs disponibles sur le net . Celui


que j'ai été l'aide dans mes cours à l'Université York est Fortran GNU, qui met en œuvre
Fortran 77 et Fortran 90 ajoute plusieurs fonctionnalités. Merci au professeur Clive Page
(Département de physique et d'astronomie, Université de Leicester, Royaume-Uni) pour
fournir le compilateur et des conseils précieux sur Fortran en général.

Vous pouvez télécharger la version 1999 de ce compilateur (version 2.95 de gcc ) avec la
bibliothèque Slatec (Version 4.1, Juillet 1993), à partir de cette page. Le package fonctionne
sous tous les 32-bit) versions (de Windows, y compris XP . Tous les fichiers nécessaires sont
emballés dans un fichier zippé ( Fort99.zip ) d'environ 6 Mo.

(Si pour une raison quelconque vous avez besoin de l'ancienne DOS/EMX version, qui ne comprend pas une
bibliothèque et ne fonctionne pas sous Windows XP , vous pouvez le télécharger à partir de mon ancienne page.)

DOWNLOAD
 Créez le répertoire \F
Le nouveau dossier doit être immédiatement sous la racine de votre disque dur. Vous
pouvez le faire en double-cliquant sur Poste de travail, puis double-cliquez sur votre
disque dur (généralement C: ), puis en sélectionnant Nouveau dossier dans le menu
Fichier et en appelant le dossier F .

 Télécharger le fichier Fort99.zip (5.820.239 octets).


Vous pouvez le faire par un clic droit de la souris sur le lien ci-dessus, et en
choisissant Enregistrer la cible sous .... Dans la fenêtre Enregistrer sous qui s'affiche,
recherchez le F dossier, et enregistrez le fichier en lui.

 Décompressez le fichier téléchargé dans \F .


Yon pouvez le faire en localisant le fichier (à partir de Poste de travail) et il suffit de
double-cliquer dessus pour lancer le programme de décompression zip /. Préciser que
tous les fichiers doivent être extraits de la F dossier avec leurs noms de chemin
conservés (ce qui est habituellement la valeur par défaut). Si vous n'avez pas de
programme de décompression zip /, un seul téléchargement à partir d'Internet.

 Set LIBRARY_PATH à \F\G77\lib et comprennent \F\G77\bin dans votre path .


Comment ces deux variables d'environnement sont définies varie d'une version de
Windows à l'autre:

o Pour la ligne de Windows 95/98/Me: Ces variables sont définies dans le


autoexec.bat fichier, qui est stocké dans le répertoire racine de votre disque
dur, c'est à dire \ . Par conséquent, vous devez éditer ce fichier et ajouter les
deux lignes:
o PATH = \ F \ G77 \ bin;% PATH%
LIBRARY_PATH SET = \ F \ G77 \ lib

Vous pouvez le faire en ouvrant ce fichier dans le Bloc-notes ou tout autre


éditeur, en ajoutant les deux lignes à la fin, puis enregistrer les modifications.
o Pour la ligne de Windows NT/2000/XP: Ces variables peuvent être définies
en allant sur le Control Panel , sélectionner System , puis localiser l'
environment (ou de pointe, de l'environnement) de l'article. Vous devez
ajouter une nouvelle variable avec le nom LIBRARY_PATH et fixez sa valeur à
\F\G77\lib . De même ajouter une nouvelle variable nommée PATH et fixez
sa valeur à \F\G77\bin ou ajouter ;\F\G77\bin à sa valeur si elle existe déjà.

Enfin, redémarrez votre ordinateur pour permettre l'évolution de l'environnement pour


prendre effet.

USAGE
Vous stockez vos programmes dans le \F\York répertoire, les compiler en utilisant: f2exe ,
et créer l'objet bibliothèque de fichiers à l'aide f2lib . Voici un programme très court pour
tester le compilateur et la configuration:
Convertir programme
none implicite
! ----------------------------------------------- Declare
* Immobiliers 4 tempc, tempF, FACTOR
integer * 2 ZERO_SHIFT
paramètre (ZERO_SHIFT = 32, = facteur de 5. / 9.)
! ----------------------------------------------- Entrée
Print *, "Entrez la température en degrés Fahrenheit ..."
* lire, tempF
! ----------------------------------------------- Compute
* Tempc FACTOR = (tempF - ZERO_SHIFT)
! ----------------------------------------------- Sortie
Print *, "La température Celsius correspondant est"
Print *, tempc, «degrés».
fin
Utilisez n'importe quel éditeur pour créer ce programme (il suffit de copier et coller) et
l'enregistrer dans un fichier texte dans le \F\York répertoire sous le nom test.for . Vous
pouvez, bien sûr, utiliser n'importe quel éditeur vous aimez tant que vous pouvez enregistrer
le fichier au format texte et avec l'extension que vous souhaitez. Bloc-notes, par exemple,
utilise le texte, mais insiste sur l'utilisation du txt extension (à moins que vous remplacez par
des guillemets doubles), tandis que MS-Word insiste sur son format propriétaire (sauf si vous
avez explicitement override). Je recommande fortement d'utiliser le Crimson Editor, qui peut
être téléchargé à partir du on-line Lab-1 (voir ci-dessous).

Compilez et exécutez votre programme à partir de la commande DOS en tapant:

cd \ F \ York
test f2exe
test
Si la première commande a retourné une erreur alors le répertoire n'a pas été créé (ou nom)
correctement. Si la deuxième commande n'a pas été reconnu, ou qui se plaignent que d'une
bibliothèque est manquante, alors les variables d'environnement ne sont pas définies
correctement (vous pouvez lancer la set de commande d'inspecter toutes les variables
d'environnement).
Plus d'informations sur l'utilisation du compilateur ne peut être trouvée dans le Labs en ligne
sur le Fortran York @ site.

LANGUE
Le \F\G77\doc répertoire a une référence précise à la langue, qui est largly ANSI Fortran-
77 , mais avec quelque 90 Fortran-fonctions supplémentaires (voir ci-dessous).

Le dessus de Fortran @ York site contient un guide de référence rapide, des laboratoires et
des exemples d'utilisation Slatec. Si vous êtes déjà familier avec Fortran alors les points
suivants peuvent être tout ce que vous devez savoir sur ce compilateur:

1. Structures de contrôle
Vous pouvez utiliser soit l'ancienne (goto-based) ou le nouveau flux de contrôle
(structuré) (ou les mélanger dans un même programme). Support du "goto laid", on
entend pour le code existant seulement, et toute nouvelle évolution devrait l'éviter.
2. Style
Vous pouvez écrire votre code source en utilisant soit le code de style ancien (colonne
7) ou plus récent de la forme libre.
3. Compilation de commande
Le ci-dessus f2exe commande est juste un fichier de commandes qui appelle g77 , le
véritable «compilation de commande". La commande:

g77 - f-forme prog.for libre - Prog.exe o

indique au compilateur de compiler le fichier prog.for et stocke le résultat dans le


fichier prog.exe . Le -ffree-form commutateur indique-forme de style libre
(l'enlever si vous utilisez l'ancien style).

4. Commentaires
En forme libre style, l'utilisation! pour les deux plein de ligne et dans les
commentaires en ligne. Dans le style ancien, utiliser un "C" dans la colonne-1.
5. Déclaration Suite
Dans le style de forme libre, vous pouvez continuer une instruction sur la ligne
suivante en le terminant par une esperluette "&". Dans l'ancien style, mettre un
personnage dans la colonne-6.
6. Chemin Separator
Lorsque vous faites référence à des fichiers (par exemple dans le fichier = 'paramètre
de l'instruction OPEN) l'utilisation d'une barre oblique "/" ou deux barres obliques
inverses consécutives "\ \" plutôt que d'une barre oblique inverse pour délimiter les
répertoires. C'est parce que la barre oblique inverse "\" désigne une séquence
d'échappement dans les chaînes.
7. I / O des numéros d'unité
Pas tous les numéros d'unité sont autorisés dans l'instruction OPEN. En particulier,
l'unité 5 est «pré-connectés" au clavier. Unités de 10 à 99 semblent bien fonctionner
avec des fichiers sur le disque.
8. Fortran-90 Caractéristiques
Il s'agit notamment: tableaux automatique en sous-programmes, des chaînes de
longueur nulle, les constantes de caractères peuvent être mis entre guillemets ( " )
ainsi que les apostrophes, cycle et exit , le DOUBLE COMPLEX type, DO WHILE , la END
décoration, KIND , IMPLICIT NONE , INCLUDE déclarations, la liste dirigée et namelist I
/ O sur les fichiers internes, binaire, octal, et les constantes hexagonale, «O» et «Z»
modifier descripteurs, NAMELIST , OPEN prescripteurs STATUS='REPLACE' , l' FILE=
spécification peut être omise dans un OPEN déclaration si STATUS='SCRATCH' est
fournie, les opérateurs relationnels < , <= , == , /= , > et >= peut être utilisé à la place
de .LT. , .LE. , .EQ. , .NE. , .GT. et .GE. respectivement, SELECT CASE (mais pas
pour les types de caractères).
9. Compilation séparée des sous-programmes
Votre programme principal est reconnu par le program déclaration, comme dans le
Convert programme ci-dessus. Les sous-programmes (fonctions et sous-programmes)
peuvent être inclus dans le même dossier que le programme principal (dans ce cas,
vous pouvez tout compiler en une seule fois) ou peuvent être stockées dans un fichier
séparé (s). Il est recommandé que vous magasin général sous-programmes
réutilisables dans des fichiers séparés afin que vous puissiez les réutiliser (sans les
recompiler) dans les projets futurs. Pour compiler un fichier qui contient des sous-
programmes seulement (pas de program déclaration), utilisez la f2lib commande, qui
génère des fichiers objet, un par sous, dans la mine répertoire, par exemple

util f2lib

compilera (sans lien) dans le sous-programme util.for et stocker le résultat (un


fichier objet) dans le fichier util.o . f2lib est juste un fichier batch qui appelle le
g77 de commande avec le -c (compilation seulement) commutateur, à savoir.

g77 - c - .. mine \ util.o \ o-forme libre util.for - f

Un programme qui utilise les fichiers objets pré-compilé peut être compilé (et qui leur
sont liés) par une simple référence à eux dans la commande de compilation:

g77-ffree-forme prog.for-oprog.exe .. \ mine \ o *.

La commande ci-dessus recherche tous les fichiers objet dans mine de résoudre les
références manquantes dans prog.for .

10. Séparez Compilation des sous-programmes, automatisé


Le fournies f2exe et f2lib fichiers batch prendre soin de la compilation séparée et
retardée lien avec des fichiers objet et avec les sous-programmes Slatec. Vous n'avez
pas à délivrer directement le g77 commande, sauf si vous utilisez le style ancien ou
colonnes que vous souhaitez modifier l'un des interrupteurs ou des répertoires.
11. Annonce de l'Assemblée
Le -S (S majuscule) vous permet de voir une annonce du code assembleur généré.

F @ Y/HR/S03 URL