2012-02-21 39 views
4

私の上司は、自分の上司の古いFortranコードを私が取り組んでいるプロジェクト(Java)に統合するよう依頼しました。コードは90年代に書かれたので、まだコンパイルされていると思いますので、書き直すのではなく、.dllから関数を呼び出すだけでいいと思います。私はすでにいくつかのCdllを呼び出しているので、私はその部分をカバーしていると思う。Windows 7でFortranの.dllをコンパイルする(無料)?

私はいくつかの読書を行ってきましたが、ほとんどの記事では、インテル®Visual FortranコンパイラーをMicrosoft Visual Studioに統合する方法について説明しています。 Visual Studio用の大学サイトライセンスを取得していますが、インテル®Visual Fortranコンパイラーの価格は約700ドルです。私は上司がそれに行くとは思わないので、別のオプションを探しています。私はマイクロソフトがProject Dreamsparkを介して学生に自由に利用できる多くの製品を提供していることを知っていますが、Fortranに関連するものは何も見つかりませんでした。

現在私はいくつかのcygwinベースのオプションを見ていますが(g95、私は思うが)、私は他のアイデアやオプションを探しています。何か案は?

+0

Open WatcomはF77をサポートしていますが、MinGWが先に仕事をすることができるかどうかを確かめたいと思っています。 –

答えて

8

私はghostran(g95)コンパイラを-sharedフラグとともに使用してDLLを作成しました。その後、

gfortran -c myfile1.f90 
gfortran -c myfile2.f90 

:最初に.FOR/.F90ファイルをコンパイル

gfortran -shared -o mydll.dll myfile1.o myfile2.o 
3

MinGWは、あなたのMSのもので動作するDLLを作成させます。

2

MingwまたはGCWなど、WindowsへのGCCポートを探します。どちらもVisual Studioでリンクできる.objファイルを作成します。あるいは、これらのコマンドラインコンパイラの1つをプロジェクトに呼び出すようにVSを設定して設定することもできます。しかし、コードは比較的静的なので、一度コンパイルしておくとうまくいけば、タスクを忘れるかもしれません。

1

Fortranの上でMicrosoftから多くの助けを期待してはいけません。 彼らはVisual Basic/Cのためにそれを殺すために何年も費やした。

Silverfrostのコンパイラを試すことができます。

http://www.silverfrost.com/11/ftn95/ftn95_fortran_95_for_windows.aspx

これは(個人版」バージョン)無料で利用できますおよびVisual Studioで動作します。 基本的にF90/F95コンパイラで、後から選択される機能が含まれています。 あなたは、古い上司のコードがF77またはF90で書かれたかどうかは言いませんでした。 しかし、私はSilverfrostが最小限の変更で古いコードを処理すると思います。

あなたがうまくいけば、必要に応じて上に移動する学術用バージョンとエンタープライズ用エディションもあります。

+0

"彼らはVisual Basic/Cを好んで数年間それを殺すことを試みた。それはほとんど事実ではない。 Fortranコンパイラーをもう作っていないという理由だけで、彼らは積極的に言語を殺そうとしていたわけではありません。 –

+0

MS Fortranは90年代初頭に存在していました。ボーランドもそれを持っていました。でも、それはまったく気にしませんでした。 –

関連する問題