2

重複の可能性:
lgfortran が見つかりません

私の質問はlgfortran not foundと非常によく似ていると考えられることを認めなければなりませんが、私は Linux の初心者なので、もっと助けが必要で、上記の投稿で探しているものが見つかりませんでした。

新しい Linux mint Debian エディションがインストールされており、Ada が機能するように lapack バインディングを作成しようとしています。

gfortran をチェックすると、次のようになります。

gfortran-4.6 -v
Using built-in specs.
COLLECT_GCC=gfortran-4.6
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i486-linux-gnu/4.6/lto-wrapper
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.6.3-1' --with-   bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++,go --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-plugin --enable-objc-gc --enable-targets=all --with-arch-32=i586 --with-tune=generic --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.6.3 (Debian 4.6.3-1)

そして、私ならlocate libgfortran、私は得る:

/usr/lib/gcc/i486-linux-gnu/4.6/libgfortran.a
/usr/lib/gcc/i486-linux-gnu/4.6/libgfortran.so
/usr/lib/gcc/i486-linux-gnu/4.6/libgfortran.spec
/usr/lib/gcc/i486-linux-gnu/4.6/libgfortranbegin.a
/usr/lib/i386-linux-gnu/libgfortran.so.3
/usr/lib/i386-linux-gnu/libgfortran.so.3.0.0
/usr/share/doc/libgfortran3
/var/lib/dpkg/info/libgfortran3.list
/var/lib/dpkg/info/libgfortran3.md5sums
/var/lib/dpkg/info/libgfortran3.postinst
/var/lib/dpkg/info/libgfortran3.postrm
/var/lib/dpkg/info/libgfortran3.shlibs
/var/lib/dpkg/info/libgfortran3.symbols

を実行するmakefileと、次のようになります。

make all
gcc -c cxbbase.ads
gcc -c cxbbase.ads
gnatmake cxbi.adb -largs ifinc.o -lgfortran -lm
gnatbind -x cxbi.ali
gnatlink cxbi.ali ifinc.o -lgfortran -lm
/usr/gnat/libexec/gcc/i686-pc-linux-gnu/4.5.3/ld: cannot find -lgfortran
collect2: ld returned 1 exit status
gnatlink: error when calling /usr/gnat/bin/gcc
gnatmake: *** link failed.
make: *** [cxbi] Error 4

私が使用しているメイクファイルは次のとおりです。

http://12000.org/my_notes/ada/lapack_and_blas/lapack_interf_makefile.txt

私は Linux に非常に慣れていないので、これを修正する方法について詳細な指示を得ることができれば、非常に感謝しています。

ありがとうございました

4

2 に答える 2

2

解決策は、/ usr / lib / gcc / i486-linux-gnu/4.6からLIBRARY_PATHへの解決策でした。このソリューションについては、CompLangAdaで説明しています。

https://groups.google.com/forum/#!topic/comp.lang.ada/Ii7YljKqu5M

于 2012-07-24T15:05:26.447 に答える
1

GNATとGCCのバージョンが一致していません。両方に同じバージョンを使用してください。

GNATはバージョン4.5.3のようですが、GCCは4.6.3です。

私の推測では、GNAT(Debianのgnatパッケージ)を更新する必要があります。どうやってGNATをインストールしたのですか?Debianのリポジトリには4.4と4.6しかないようです。また、公式パッケージは一切使用/usr/gnatしていません。

于 2012-07-24T14:03:16.250 に答える