属性を持つ変数と属性を持つ変数を含む Fortran モジュールがparameterありますsave。それらparameterはコンパイルされたオブジェクトに含まれていないため、ライブラリをアセンブルしようとすると問題になります。たとえば、ファイルを考えてみましょうtestModule.f90:
module testMOD
integer, save :: thisIsSaved = 1
integer, parameter :: thisIsParametered = 2
end module testMOD
これを次のようにコンパイルします: ifort -c testModule.f90. 中身を確認すると:
>$ nm testModule.o
0000000000000000 T testmod._
0000000000000000 D testmod_mp_thisissaved_
thisIsSaved変数のみが存在します。ではなく変更できるthisIsParameteredことはわかっていますが、理想的には、リンクしているユーザーがこの値を変更できないようにしたいと考えています。これを行う方法はありますか?saveparameter
編集: Fortran だけでなく、C コードからもこのライブラリにアクセスできるようにしたいと思います。