4. Como usar Fortran bajo Linux
Detalles Prácticos
Para realizar los ejemplos y los ejercicios se requiere que se tenga
instalado Linux (se recomienda una distribución reciente), o bien, se
pueden hacer en el Laboratorio de la Escuela de Ciencias
Físico-Matemáticas de la UMSNH, para este caso se necesita una cuenta
en el servidor garota, la cual se puede tramitar con el responsable del laboratorio.
En este curso se usará Fortran bajo el sistema operativo Linux. Si no se tiene
experiencia previa con Linux, se tendrán que aprender las bases por su propia
cuenta. Se pueden ver algo de información en la siguiente liga.
Si se tiene instalado Linux en algún equipo, hay bastantes posibilidades de
que el compilador de Fortran 77 se encuentre disponible. Verificar tecleando
f77 --help
(teclearlo todo con mínúsculas). En caso de que se
encuentre aparece una pantalla de ayuda, caso contrario puede aparecer un
mensaje con la siguiente leyenda command not found
Código fuente, código objeto, compilación y ligado
Un programa de Fortran consiste de texto plano (sin secuencias de control) que
observa ciertas reglas (sintaxis). Este es llamado el código fuente.
Se requiere usar un programa editor para escribir el código fuente.
Los editores más comunes en el ambiente Unix son emacs y vi,
pero pueden ser un poco complicados para usuarios novatos. Afortunadamente
dentro del ambiente gráfico se pueden usar editores más amigables como
xedit.
Cuando se escriba un programa en Fortran, se deberá guardar en un archivo con
la extensión .f o .for. Antes de que se pueda ejecutar el
programa, se requiere traducir el programa en una forma legible para la
máquina. Esto se hace con un programa especial conocido como
compilador. El compilador de Fortran 77 es usualmente conocido como
f77. La salida del compilador es un archivo con el nombre
a.out por default, pero se puede escoger otro nombre si así se desea.
Para ejecutar el programa, se deberá teclear el nombre del archivo ejecutable,
por ejemplo a.out. (Esta parte esta un poco simplificada, ya que
realmente el compilador traduce el código fuente en código objeto y
entonces usando el ligador/cargador se genera un archivo ejecutable.)
Ejemplos:
En la sección
anterior hay un pequeño código al principio. Copia el código en el editor
que estes usando y guarda el archivo con el nombre circulo.for. Para
compilarlo y ejecutarlo teclea lo siguiente:
f77 circulo.for
a.out
Para compilar el programa fuente y generar el ejecutable con un nombre diferente de
a.out, se puede usar con la opción -o, por ejemplo,
f77 circulo.for -o circulo
En los ejemplos previos, no se ha distinguido entre compilar y ligar.
Estos son dos procesos diferentes, pero el compilador de Fortran hace
ambos, por lo que usualmente el usuario no se da cuenta. En el
siguiente ejemplo se usan dos códigos fuentes para obtener un sólo codigo ejecutable.
f77 circulo1.for circulo2.for
En este caso el compilador genera dos códigos objetos los cuales son borrados
automáticamente al generar el código ejecutable a.out. Se puede
también hacer en dos pasos separados de la siguiente forma:
f77 -c circulo1.for circulo2.for
f77 circculo1.o circculo2.o
Compilando archivos por separados es útil si hay muchos archivos y sólo unos
cuantos necesitan ser recompilados. En Unix hay una herramienta llamada
make la cual es usada para manejar proyectos grandes. Para lo
anterior se requiere de un archivo Makefile que instruya como se debe
compilar y cuales son las dependencias entre los distintos archivos.
Ejercicios:
- Ejercicio A
- Compilar y ejecutar el programa circulo.for
- Ejercicio B
- Modificar el programa anterior para que calcule el perímetro en vez del
área. Compilarlo, ejecutarlo y verificar la salida del programa.
[3. Introducción a Fortran]
[Tutorial de Fortran]
[5. Variables, declaraciones y tipos]