Linuxで現在Fortranコンパイラ(gfortranなど)と連携するように「互換性のない」i386 f77ライブラリを入手するにはどうすればよいですか?

Linuxで現在Fortranコンパイラ(gfortranなど)と連携するように「互換性のない」i386 f77ライブラリを入手するにはどうすればよいですか?

elf32-i386ライブラリを実行したいlibkernlib.a最新のUbuntu LinuxシステムでFortran 77プログラムを使用してください。私が知っている限り、gfortranFortran 77と下位互換性がありますが、ライブラリで動作させるのに問題があります。 -ff2c、-fbackflashなどを試しましたが、すべてがまだ私に提供されています。

$ gfortran -ff2c -O -o output f77fortran.f -lkernlib

/usr/bin/ld: skipping incompatible //usr/local/lib/libkernlib.a when searching for -lkernlib
/usr/bin/ld: canot find -lkernlib

私も試してみましたfort77。動作しているものが見つかりませんf77gfortranf77や他のものを使ってf77プログラムとそのライブラリを実行する方法を知っている人がいればいいでしょう。

ちなみに、libkernlib.aライブラリには、「ライブラリ」リンクの以前のバージョンがあります。このページしかし、私が試したことはすべて同じエラーを生成し、すべてi386でした(私はこれを通してこれを見つけましたobjdump -f libkernlib.a)。

コンテキスト:これはMathematicaの一部です。プロジェクト古いコードを使用してください。

答え1

それは実際に-m32私よりもうまく機能し、-ff2cまったく使用する必要はありません。-ff2c

$ gfortran -m32 -O -o output f77fortran.f -lkernlib 

32ビットまたはf77の互換性に関連するいくつかの異なるバグが見つかりましたが、これはパッケージを追加することで解決されました。

  • lib32gfortran-4.8-dev
  • gcc-multilib

関連情報