Gestor de Paquetes para Fortran: fpm

Fortran Package Manager (fpm) es un administrador de paquetes y un sistema de compilación para Fortran. Su objetivo clave es mejorar la experiencia del usuario de los programadores de Fortran.

FPM facilita la creación de un programa o biblioteca Fortran, ejecutar los ejecutables, las pruebas y los ejemplos y distribuirlo como una dependencia a otros proyectos de Fortran.

La interfaz de usuario de Fpm sigue el modelo de Rust’s Cargo, por lo que si está familiarizado con esa herramienta, te sentirás como en casa con fpm.

La visión a largo plazo de Fpm es nutrir y hacer crecer el ecosistema de las aplicaciones y bibliotecas modernas de Fortran.

Puede usar FPM para construir y empaquetar sus proyectos de Fortran, así como para usar paquetes fpm existentes como dependencias.

El comportamiento y la interfaz de usuario de Fpm pueden cambiar a medida que evoluciona, sin embargo, a medida que fpm madura y entremos en producción, intentaremos mantener la compatibilidad con versiones anteriores.

Fortran Package Manager no debe confundirse con el fpm de Jordan Sissel, un administrador de paquetes más general, no relacionado con Fortran.

Descarga del binario

x86-64Los binarios están disponibles para descargar para Windows, MacOS y Linux.

Nota: En Linux y MacOS, deberá habilitar el permiso ejecutable antes de poder usar el binario.

p.ej $ chmod u+x fpm-v0.1.0-linux-x86_64

Conda

Fpm está disponible en conda-forge, para agregar conda-forge a tus canales usa:

conda config --add channels conda-forge

Fpm se puede instalar con:

conda create -n fpm fpm
conda activate fpm

El administrador de paquetes conda se puede instalar desde miniforge o desde miniconda.

Acciones de Github

Para configurar fpm dentro de las acciones de Github para pruebas automatizadas, puede usar la acción fortran-lang/setup-fpm.

Creando un nuevo proyecto

Crear un nuevo proyecto fpm es tan simple como ejecutar el comando fpm new project_name. Esto creará una nueva carpeta en su directorio actual con el siguiente contenido y se inicializará como un repositorio de git.

  • fpm.toml – con el nombre de su proyecto y algunos metadatos estándar predeterminados
  • README.md – con el nombre de tu proyecto
  • .gitignore
  • src/project_name.f90 – con una subrutina simple de hola mundo
  • app/main.f90(si se --appusa una bandera): un programa que llama a la subrutina
  • test/main.f90(si se --testusa la bandera) – un programa de prueba vacío

Construyendo un proyecto Fortran con fpm

fpm comprende los comandos básicos:

  • fpm build – construya su biblioteca, ejecutables y pruebas
  • fpm run – ejecutar ejecutables
  • fpm test – ejecutar pruebas
  • fpm install – instala los ejecutables localmente

El comando fpm runpuede aceptar opcionalmente el nombre del ejecutable específico para ejecutar, como puede fpm test; como fpm run specific_executable. Los argumentos de la línea de comandos también se pueden pasar a los ejecutables o pruebas con la opción -- some arguments.

Instrucciones de arranque

Esta guía explica el proceso de creación de fpm en una plataforma por primera vez. Para compilar fpm sin una versión previa de fpm, hay disponible una única versión de archivo fuente en cada lanzamiento.

Para compilar manualmente utilizando la distribución de fuente única, ejecute el siguiente código (desde el directorio actual).

mkdir _tmp
curl -LJ https://github.com/fortran-lang/fpm/releases/download/v0.2.0/fpm-0.2.0.f90 > _tmp/fpm.f90
gfortran -J _tmp _tmp/fpm.f90 -o _tmp/fpm
_tmp/fpm install --flag "-g -fbacktrace -O3"
rm -r _tmp

Para arrancar automáticamente con este enfoque, ejecute el script de instalación:

./install.sh

Puede configurar el compilador Fortran y los indicadores del compilador con las variables de entorno FC y FFLAGS.

? Visita FORTRAN LANG

Admin

Compartir
Publicado por
Admin
Etiquetas: Fortran

Entradas recientes

Juegos Gratis de Epic Games hasta el 20 de noviembre: ScourgeBringer, Songs of Silence y Zero Hour

Si eres un amante de los videojuegos, estás de suerte. Hasta el 20 de noviembre…

2 horas hace

Premio Nobel se une a Bigtechs para trabajar en construir Computadoras Cuánticas personales

La computación cuántica acaba de dar un salto gigante. John M. Martinis, recién galardonado con…

4 horas hace

La biografía de Steve Jobs escrita por el biógrafo Walter Isaacson

La biografía más vendida del cofundador de Apple, Steve Jobs; escrita por uno de los…

2 días hace

Cómo la Inteligencia Artificial está Revolucionando los Sistemas de Seguridad en el Hogar

Hubo un tiempo en el que la “seguridad en el hogar” significaba confiar en un…

2 días hace

Elon Musk se asegura una compensación de 1 billón de dólares con Tesla

Elon Musk vuelve a romper todos los esquemas. Los accionistas de Tesla acaban de aprobar…

2 días hace

GTA 6 se retrasa hasta finales de 2026

Los fans de Grand Theft Auto tendrán que esperar un poco más para volver a…

5 días hace