主にLinuxを使用して、pythonとf2pyでいくつかのコードを書きました。これはすべて正常に機能しますが、これを Windows ユーザーと共有したいので、必ずしも gfortran や gcc を持っていないユーザーに配布可能なモジュールを作成しようとしています。Windows XPボックスにアクセスでき、gfortranでmingwを使用しています。そのマシンでモジュールをコンパイルして使用できますが、他のマシンでは、作成された pyd には dll の libgcc と libgfortran が必要なようです。http://www.scipy.org/F2PY_Windowsの例を次に示します。
subroutine hello ()
write(*,*)'Hello from Fortran90!!!'
end subroutine hello
でコンパイル
python c:\path\to\python\scripts\f2py.py -c \
--fcompiler=gnu95 --compiler=mingw32 \
-lmsvcr71 -m foo foo.f90
これは、コンパイルしたマシンでは期待どおりに機能しますが、別のマシンにコピーすると、
DLL load failed: The specified module could not be found.
依存関係ウォーカーを使用すると、libgcc_s_dw2-1.dll および libgfortran-3.dll の dll が見つからないことがわかります。ユーザーが gcc と gfortran を持っていると仮定せずに配布できる pyd を作成することは可能ですか? 私は両方のマシンで python2.7 を使用しています。両方とも 32 ビットです。1 つは XP、もう 1 つは Windows 7 です。