Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| tutorial_de_compilacion_en_fortran [2025/02/27 20:19] – peron | tutorial_de_compilacion_en_fortran [2026/04/21 16:09] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 11: | Línea 11: | ||
| - El nombre del fichero que contiene el código fuente en fortran debe terminar con '' | - El nombre del fichero que contiene el código fuente en fortran debe terminar con '' | ||
| - | - El compilador se invoca con '' | + | - El compilador se invoca con '' |
| - El compilador tiene varias opciones disponibles (**-c**, **-o**, **-p**, **-S**) | - El compilador tiene varias opciones disponibles (**-c**, **-o**, **-p**, **-S**) | ||
| - Se hacen preconexiones para //stdin// y //stdout// | - Se hacen preconexiones para //stdin// y //stdout// | ||
| Línea 18: | Línea 18: | ||
| - | <code fortran> | + | <file fortran |
| program llamando | program llamando | ||
| write(6, | write(6, | ||
| Línea 43: | Línea 43: | ||
| 210 | 210 | ||
| end | end | ||
| - | </code> | + | </file> |
| - | === | + | === |
| Para compilar el programa '' | Para compilar el programa '' | ||
| <code bash> | <code bash> | ||
| - | f95 hola.f | + | gfortran |
| </ | </ | ||
| - | Si no provee opciones, | + | Si no provee opciones, |
| <code bash> | <code bash> | ||
| - | $ f95 hola.f | + | $ gfortran |
| $ ./a.out | $ ./a.out | ||
| Hola desde rutina main! | Hola desde rutina main! | ||
| Línea 84: | Línea 84: | ||
| |otro |Leer y ejecutar | | |otro |Leer y ejecutar | | ||
| - | >No le será necesario cambiar los permisos con //chmod//, debido a que el compilador | + | >No le será necesario cambiar los permisos con //chmod//, debido a que el compilador |
| Línea 118: | Línea 118: | ||
| === Otorgar nombre al fichero de salida=== | === Otorgar nombre al fichero de salida=== | ||
| - | Es posible otorgarle al compilador | + | Es posible otorgarle al compilador |
| - | La opción **-o** solicita al compilador | + | La opción **-o** solicita al compilador |
| - | No es necesario que la opción **-o** aparezca después del comando | + | No es necesario que la opción **-o** aparezca después del comando |
| <code bash> | <code bash> | ||
| - | $ f95 -o hola.f | + | $ gfortran |
| $ ./hola | $ ./hola | ||
| Hola desde rutina main! | Hola desde rutina main! | ||
| Línea 148: | Línea 148: | ||
| === Producir un listado de Ensamblador === | === Producir un listado de Ensamblador === | ||
| - | Esta opción hace que f95 compile programas de Fortran y disponga los programas de código ensamblador en un ficherode | + | Esta opción hace que gfortran |
| Por ejemplo | Por ejemplo | ||
| <code bash> | <code bash> | ||
| - | $ f95 -S hola.f | + | $ gfortran |
| $ ls -c | $ ls -c | ||
| ejemplo.f | ejemplo.f | ||
| Línea 172: | Línea 172: | ||
| Para compilar los tres ficheros del ejemplo anterior (sin producir aún un ejecutable), | Para compilar los tres ficheros del ejemplo anterior (sin producir aún un ejecutable), | ||
| - | <code bash>f95 -c main.f sub1.f sub2.f</ | + | <code bash>gfortran |
| - | La opción **-c** compila, pero no carga los ficheros de código objeto. Esta opción hace que f95 compile y/o ensable los programas de código fuente, pero deje los programas de código objeto correspondiente con la extensión de fichero '' | + | La opción **-c** compila, pero no carga los ficheros de código objeto. Esta opción hace que gfortran |
| Como vemos, el resultado será: | Como vemos, el resultado será: | ||
| Línea 180: | Línea 180: | ||
| <code bash> | <code bash> | ||
| - | $ f95 -c main.f sub1.f sub2.f | + | $ gfortran |
| main.f: | main.f: | ||
| MAIN: llamando: | MAIN: llamando: | ||
| Línea 195: | Línea 195: | ||
| </ | </ | ||
| - | La opción **-c** provoca que el sistema de compilación suprima la fase de edición de enlace. Esto produce un fichero o ficheros objeto, en este ejemplo, '' | + | La opción **-c** provoca que el sistema de compilación suprima la fase de edición de enlace. Esto produce un fichero o ficheros objeto, en este ejemplo, '' |
| - | === Compiladno | + | === Compilar |
| El comando para producir un módulo ejecutable a partir de varios ficheros objeto en este caso sería: | El comando para producir un módulo ejecutable a partir de varios ficheros objeto en este caso sería: | ||
| <code bash> | <code bash> | ||
| - | $ f95 main.o sub1.o sub2.o | + | $ gfortran |
| $ ls -C | $ ls -C | ||
| main.o sub1.o sub2.o a.out | main.o sub1.o sub2.o a.out | ||
| $ | $ | ||
| </ | </ | ||
| + | |||
| + | __Ver También__: [[Tutorial de Compilación en COBOL]] | ||
