Herramientas de usuario

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
tutorial_de_compilacion_en_fortran [2025/02/27 20:19] perontutorial_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 ''.f''   - El nombre del fichero que contiene el código fuente en fortran debe terminar con ''.f''
-  - El compilador se invoca con ''f95''.+  - El compilador se invoca con ''gfortran''''f95''.
   - 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 hola.f>
       program llamando       program llamando
       write(6,100)       write(6,100)
Línea 43: Línea 43:
 210   format(t20,' Hola desde subrutina2!',/) 210   format(t20,' Hola desde subrutina2!',/)
       end       end
-</code>+</file>
  
  
-===  Compilando un programa===+===  Compilar un programa===
  
 Para compilar el programa ''hola.f'' en un programa ejecutable, invoque el compilador de Fortran con: Para compilar el programa ''hola.f'' en un programa ejecutable, invoque el compilador de Fortran con:
  
 <code bash> <code bash>
-f95 hola.f+gfortran hola.f
 </code> </code>
  
-Si no provee opciones, f95 aceptará código fuente Fortran o programas en lenguaje ensamblador que sigan las convenciones delineadas anteriormente. Compilará, ensamblará, y cargará dichos programas produciendo un ejecutable denominado convencionalmente ''a.out'' (lo que significa "salida de ensamblador"). El compilador f95 da como salida el código objeto en ficheros con el nombre del fichero de base, pero recurriendo a la extensión ''.o''.+Si no provee opciones, gfortran aceptará código fuente Fortran o programas en lenguaje ensamblador que sigan las convenciones delineadas anteriormente. Compilará, ensamblará, y cargará dichos programas produciendo un ejecutable denominado convencionalmente ''a.out'' (lo que significa "salida de ensamblador"). El compilador gfortran da como salida el código objeto en ficheros con el nombre del fichero de base, pero recurriendo a la extensión ''.o''.
  
  
 <code bash> <code bash>
-f95 hola.f+gfortran hola.f
 $ ./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 f95 otorgará el permiso de ejecución automáticamente.+>No le será necesario cambiar los permisos con //chmod//, debido a que el compilador gfortran otorgará el permiso de ejecución automáticamente.
  
  
Línea 118: Línea 118:
 ===  Otorgar nombre al fichero de salida=== ===  Otorgar nombre al fichero de salida===
  
-Es posible otorgarle al compilador de Fortran un nombre para fichero de salida, en lugar de hacerlo por defecto a ''a.out'' por defecto, usando la opción **-o**.+Es posible otorgarle al compilador gfortran un nombre para fichero de salida, en lugar de hacerlo por defecto a ''a.out'' por defecto, usando la opción **-o**.
  
-La opción **-o** solicita al compilador f95 que le informe al editor de enlaces el uso de un nombre distintivo para la salida.+La opción **-o** solicita al compilador gfortran que le informe al editor de enlaces el uso de un nombre distintivo para la salida.
  
-No es necesario que la opción **-o** aparezca después del comando f95. El nombre de archivo que aparece después de -o será el nombre del fichero de salida. Por ejemplo, ''f95 fuente -o salida'' es lo mismo que ''f95 -o salida fuente''-+No es necesario que la opción **-o** aparezca después del comando gfortran. El nombre de archivo que aparece después de -o será el nombre del fichero de salida. Por ejemplo, ''gfortran fuente -o salida'' es lo mismo que ''gfortran -o salida fuente''-
  
  
 <code bash> <code bash>
-f95 -o hola.f+gfortran -o hola.f
 $ ./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  extensión ''.s''.+Esta opción hace que gfortran compile programas de Fortran y disponga los programas de código ensamblador en un ficherode  extensión ''.s''.
  
 Por ejemplo Por ejemplo
  
 <code bash> <code bash>
-f95 -S  hola.f+gfortran -S  hola.f
 $ ls -c $ ls -c
 ejemplo.f         hola      hex.c     octal.c ejemplo.f         hola      hex.c     octal.c
Línea 172: Línea 172:
 Para compilar los tres ficheros del ejemplo anterior (sin producir aún un ejecutable), deberá utilizar el siguiente comando: Para compilar los tres ficheros del ejemplo anterior (sin producir aún un ejecutable), deberá utilizar el siguiente comando:
  
-<code bash>f95 -c main.f sub1.f sub2.f</code>+<code bash>gfortran -c main.f sub1.f sub2.f</code>
  
-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 ''.o''.+La opción **-c** compila, pero no carga los ficheros de código objeto. Esta opción hace que gfortran 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 ''.o''.
  
 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 -c main.f sub1.f sub2.f
 main.f: main.f:
      MAIN: llamando:      MAIN: llamando:
Línea 195: Línea 195:
 </code> </code>
  
-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, ''main.o'', ''sub1.o'' y ''sub2.o'') que podrán ser enlazados posteriormente ingresando ''f95'' (sin opciones).+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, ''main.o'', ''sub1.o'' y ''sub2.o'') que podrán ser enlazados posteriormente ingresando ''gfortran''''f95'' (sin opciones).
  
  
-=== Compiladno ficheros objeto para producir un módulo ejecutable===+=== Compilar ficheros objeto para producir un módulo ejecutable===
  
 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 main.o sub1.o sub2.o
 $ ls -C $ ls -C
 main.o sub1.o sub2.o a.out main.o sub1.o sub2.o a.out
 $ $
 </code> </code>
 +
 +__Ver También__: [[Tutorial de Compilación en COBOL]]

Este sitio web utiliza cookies para guardar datos esenciales de su actividad, como su autenticación. Al entrar acepta el uso de cookies.

Más información