Camfort является инструментом рефакторинга и проверки для научных программ Fortran. В настоящее время он поддерживает Fortran 66, 77, 90, 95 и 2003 (в некоторой степени) с различными уравновешенными расширениями.
Это исследовательский проект, разработанный в Кембриджском университете и Университете Кента.
Рекомендуемый метод установки ОС:
camfort-bundle-windowsbrew install camfort/camfort/camfortМы предоставляем предвзятые двоичные файлы для Windows, Mac и Linux. Для Windows мы также предоставляем архивы, которые объединяют исполняемый файл Camfort вместе со всеми его зависимостями.
Camfort также доступен через Homebrew (формула):
brew install camfort/camfort/camfort
Старая (~ 2019) версия Camfort доступна на Docker в Camfort/Camfort.
Новое изображение Docker для разработчиков (все еще работающих в процессе) доступно по адресу ghcr.io/camfort/camfort:dev . Предлагаемый вызов:
podman run --volume $(pwd):/host --workdir /host ghcr.io/camfort/camfort:dev <CamFort arguments> Camfort-это инструмент командной строки, поэтому вызовите его из вашей любимой оболочки или командной строки. Подробная информация об использовании доступна на вики.
(Если вам нужна недавняя сборка и не хотите проходить процесс компиляции, вы можете вместо этого проверить вкладку «Действия» и загрузить соответствующую сборку для вашей системы с недавнего запуска рабочего процесса.)
Этот раздел только кратко охватывает здание. См. Вики: здание для полной информации.
Camfort поддерживает GHC 8.4 через GHC 8.10 и строит как стека, так и в кабину. Мы регулярно проверяем, по крайней мере, минимальный и максимальный поддерживаемый GHC. Выпуски до/новее, чем эти, могут иметь проблемы. (Мы приветствуем исправления, которые позволили бы нам поддерживать более широкий спектр компиляторов!)
Скорее всего, вам понадобится не менее 3 Gibs of Pemory и некоторое терпение для создания Camfort.
Camfort зависит от следующих иностранных библиотек:
Они должны быть созданы для вашей системы, но метод установки варьируется. Системные руководства представлены на вики. (В качестве альтернативы вы можете проверить рабочие процессы действий GitHub.) На Ubuntu:
apt install libflint-dev liblapack-dev libopenblas-dev z3
Затем stack build для стека или cabal build для Cabal.
Чтобы включить автозаполнение Bash для Camfort, добавьте следующее в свой файл .bashrc или .bash_profile :
eval "$(camfort --bash-completion-script=$(which camfort))"
Мы ценим любые ошибки, с которыми вы сталкиваетесь, и любезно просим вас отправить их в качестве проблемы.
Запросы на привлечение очень ценятся, но, пожалуйста, свяжитесь с нами, если это существенное изменение. Обязательно запустите тестовый набор перед отправкой.
Если у вас есть научный код, который вы хотели бы проанализировать, мы были бы рады добавить его в Camfort Corpus. Это помогает нам найти полезные способы расширения Camfort, а также обеспечить его надежным.
См. doc/maintainers.md .