我必須承認,我的問題可以被認爲是非常相似的:
但因爲我是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
我使用的makefile文件在這裏:
http://12000.org/my_notes/ada/lapack_and_blas/lapack_interf_makefile.txt
由於我對Linux非常陌生,如果能夠獲得有關如何解決此問題的詳細說明,我將不勝感激。
謝謝
@ oenone。謝謝。我從Adacore libre安裝了GNAT GPL。我之前使用過Debian打包的Ada(stable)版本4.4,但makefile在2行後停止。所以我認爲GNAT存在問題。這就是爲什麼我選擇了未包裝在Debian中的GNAT GPL。 – yCalleecharan 2012-07-24 14:09:52
使用GNAT GPL,makefile與GNAT 4.4相比執行時間更長(即更多行),但是後來我得到了有關lgfortran的抱怨。但是你真的相信這是GNAT的錯,還是與lgfortran或gfortran有關?謝謝。 – yCalleecharan 2012-07-24 14:11:43
是的,我注意到官方或打包的debian GNAT使用/ usr/bin/gcc而不是/ usr/gnat/bin/gcc。 1投票。 – yCalleecharan 2012-07-24 14:12:59