LoginSignup
6
2

More than 3 years have passed since last update.

fpm (Fortran Package Manager) を使ってみた

Last updated at Posted at 2020-06-17

能書き

@implicit_none さんの紹介記事の出た fpm (Fortran Package Manager) を使ってみました。

makefile を書くのもだるいし automake も流行らないようだしで、楽ちんそうなfpm に浮上してもらいたいです。最近 rust の cargo のようにネットから必要なライブラリのソースを引っ張ってこれるようにもなったようなので期待上げです。

mp1 encoder

題材としては、以前記事にした mp1 encpoder を使ってみました。

とりあえず fpm 設定が出来ているならば(これが結構めんどかった)github から落としてきて fpm build を何回か繰り返せばおkです。

$git clone https://github.com/cure-honey/uzura1_fpm.git
$cd uzura1_fpm
$fpm build --release
$fpm build --release
... (何回か繰り返す必要あり)
$fpm test
(test/sweep.wav を test/sweep.mp1 に変換)
$build/app/gfortran_release/uzura1_fpm  WAVファイル名
(コマンドライン引数に変換するファイル名[拡張子抜き]を書くので、fpm run は無理?)

fpm.toml ファイルの書き方がよく分からないので、メインプログラムは app/main.f90 に、残りの module 群は 1 モジュール 1 ファイルにしてファイル名とモジュール名を同じにしました。というか、そうしないとうまくいきませんでした。fpm.toml で main.f90 などは変えられるようです。

その他

少しだけ命名法を変えて、インデントを4スペースにしてみました。モノラルファイル場合にバグがあったので直しておきました。また maxloc/minloc 関数の挙動を最近のものに合わせるように直しました。

お粗末ですが、これでおしまい。

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2