Camfort est un outil de refactorisation et de vérification pour les programmes scientifiques FORTRAN. Il prend actuellement en charge Fortran 66, 77, 90, 95 et 2003 (quelque peu) avec diverses extensions héritées.
Il s'agit d'un projet de recherche développé à l'Université de Cambridge et à l'Université de Kent.
Méthode d'installation recommandée par OS:
camfort-bundle-windowsbrew install camfort/camfort/camfortNous fournissons des binaires prédéfinis pour Windows, Mac et Linux. Pour Windows, nous fournissons également des archives qui regroupent l'exécutable de Camfort avec toutes ses dépendances.
Le Camfort est également disponible via Homebrew (formule):
brew install camfort/camfort/camfort
Une version plus ancienne (~ 2019) de Camfort est disponible sur Docker à Camfort / Camfort.
Une nouvelle image Docker pour les développeurs (toujours en cours de travail) est disponible sur ghcr.io/camfort/camfort:dev . L'invocation suggérée est:
podman run --volume $(pwd):/host --workdir /host ghcr.io/camfort/camfort:dev <CamFort arguments> Camfort est un outil de ligne de commande, alors invoquez-le à partir de votre coquille ou de votre commande de commande préférée. Des informations détaillées sur l'utilisation sont disponibles sur le wiki.
(Si vous voulez une version récente et que vous ne souhaitez pas passer par le processus de compilation, vous souhaiterez peut-être vérifier l'onglet Actions et télécharger la version pertinente de votre système à partir d'un flux de travail récent.)
Cette section ne couvre que brièvement le bâtiment. Voir Wiki: Bâtiment pour plus de détails.
Camfort prend en charge GHC 8.4 à GHC 8.10 et construit avec Stack et Cabal. Nous testons régulièrement au moins les GHC minimums et maximaux pris en charge. Les versions avant / plus récentes que celles-ci peuvent avoir des problèmes. (Nous accueillons des correctifs qui nous permettraient de soutenir une gamme plus large de compilateurs!)
Vous aurez probablement besoin d'au moins 3 gibs de mémoire et de patience pour construire le Camfort.
Camfort dépend des bibliothèques étrangères suivantes:
Ceux-ci doivent être conçus pour votre système, mais la méthode d'installation varie. Des guides spécifiques au système sont fournis sur le wiki. (Alternativement, vous pouvez vérifier les workflows GitHub Actions.) Sur Ubuntu:
apt install libflint-dev liblapack-dev libopenblas-dev z3
Ensuite, stack build pour la pile ou cabal build pour la cabale.
Pour activer BASH ACHASSEMENT pour CAMFORT, ajoutez ce qui suit à votre fichier .bashrc ou .bash_profile :
eval "$(camfort --bash-completion-script=$(which camfort))"
Nous apprécions tous les bogues que vous rencontrez et vous demandons de le soumettre en tant que problème.
Les demandes de traction sont très appréciées, mais veuillez nous contacter d'abord s'il s'agit d'un changement substantiel. Assurez-vous d'exécuter la suite de test avant de vous soumettre.
Si vous avez un code scientifique que vous aimeriez que nous analysons, nous serions heureux de l'ajouter au Camfort Corpus. Cela nous aide à trouver des moyens utiles d'étendre le Camfort et à garantir qu'il est robuste.
Voir doc/maintainers.md .