私はACコードからFortran90コードを呼び出しています。main()
同じファイル内にラッパー関数を呼び出す(実際にはliblibrary.a内の)fortranサブルーチンを呼び出す(c)があります。私はLinuxに取り組んでいます。現在、gdb
実行可能ファイルのデバッグに使用していますが、main.cファイルが見つかりません。を使用して作業ディレクトリを追加しました
directory /my/working/directory
それでも、main.cという名前のファイルはないと表示されます。その中
に入力すると、Fortranコードの一部が表示されます。と入力すると、現在のソース言語はです。
実行可能ファイルを実行し、それを中断してスタックを調べると、呼び出しているc-functionが表示されますが、ソースファイルは表示されず、代わりにfortranサブルーチンと関数が表示されます。
変数をcからFortranに、そして逆方向に正しく渡しているかどうかを調査しようとしていますが、そうではないと思います。list
gdb
show language
auto; currently c
同じことが、idb
多かれ少なかれ起こります。main.cを中断しようとすると、と表示されますnot found
。これらのフラグを使用してFortranコードをコンパイルしました。
-g -O0 -check bounds -warn all -traceback -align all -align rec8byte
およびcコード:
-g -O0 -Wall
すべての提案を歓迎します。