fpm最初の一歩
fpm最初の一歩¶
ここでは,コマンドラインにおけるFortranパッケージマネージャ(fpm)の基本的な使用方法を取り扱います.新規プロジェクトの作成や,プロジェクトを実行ファイルにコンパイルする方法だけでなく,構築されたプログラムを実行する方法についても取り扱います.
fpmで新しいプロジェクトを始めるには,fpm newコマンドを用います.
❯ fpm new first_steps
標準では,fpmは既定の構成をもつ仮プロジェクトを含んだgitリポジトリを作成します.
❯ cd first_steps
❯ tree .
.
├── README.md
├── app
│ └── main.f90
├── fpm.toml
├── src
│ └── first_steps.f90
└── test
└── check.f90
3 directories, 5 files
これが,新しいプロジェクトを開始するために必要な全てです.最初に,パッケージマニフェストであるfpm.toml
を見てみましょう.fpm.toml
には,仮データが記入されています.
name = "first_steps"
version = "0.1.0"
license = "license"
author = "Jane Doe"
maintainer = "jane.doe@example.com"
copyright = "Copyright 2021, Jane Doe"
[build]
auto-executables = true
auto-tests = true
auto-examples = true
[install]
library = false
パッケージマニフェストには,新規プロジェクトに必要な全てのメタデータが含まれています.次に,fpmが生成した実行ファイルapp/main.f90
を確かめます.
program main
use first_steps, only: say_hello
implicit none
call say_hello()
end program main
このプログラムは,既にライブラリからモジュールをuse
しています.当該のモジュールは,src/first_steps.f90
で確認できます.
module first_steps
implicit none
private
public :: say_hello
contains
subroutine say_hello
print *, "Hello, first_steps!"
end subroutine say_hello
end module first_steps
fpm run
コマンドによって,実行ファイルを直接実行できます.
❯ fpm run
...
Hello, first_steps!
同様に,fpmはテストのための仮ソースを作成済みであり,fpm test
で呼び出せます.
❯ fpm test
...
Put some tests in here!
Fpmは,runやtestサブコマンドによってプロジェクトを実行する際に,自動的にプロジェクトの変更を追跡します.
まとめ
ここでは以下の方法を学びました.
fpmコマンドラインから新規プロジェクトを作成する方法
fpmを用いてプロジェクトをビルドし,実行する方法
fpmを用いてテストを実行する方法