g77编译错误(找不到crt1.o,crti.o,-lgcc_s)

时间:2015-02-06 12:38:04

标签: linux fortran ubuntu-14.04 g77

我真的需要一些帮助。我正在尝试为我的论文编译和执行一些程序。

问题是,我之前从未使用Fortran,所以我盲目地依赖文档....它说使用一些命令来完成工作,特别是

setenv bc03 PATH TO SRC DIRECTORY
cd $bc03
source ./.bc_cshrc

所以,我安装了Ubuntu 14.04(我在Windows上工作,这是另一个问题,我也是Linux的新手),并在终端中使用这些命令。

起初它不起作用'因为它无法识别g77命令,我按照教程安装g77,再次启动“make all”命令,看起来它部分有效。 我得到它,编译器在目录中创建了一堆.o文件,但是当它编译6个主程序时

"make bin_ised ascii_ised vel_disp csp_galaxev add_bursts downgrade_resolution"

它给了我这些错误(我从意大利语中翻译了一些部分)

make[1]: entering directory "/home/lews/Documenti/bc03/src"
g77 -ffixed-line-length-132 bin_ised.f ./public_utilities.a -o bin_ised
/usr/bin/ld: cannot find crt1.o: File o directory non esistente
/usr/bin/ld: cannot find crti.o: File o directory non esistente
/usr/bin/ld: cannot find -lgcc_s
collect2: ld returned 1 exit status
make[1]: *** [bin_ised] Errore 1
make[1]: leaving directory "/home/lews/Documenti/bc03/src"
make: *** [all] Errore 2

我很伤心,因为我告诉过你我是Fortran和Linux的新手,所以我真的无法理解......感谢你的帮助!

1 个答案:

答案 0 :(得分:1)

沟渠g77。多年来一直没有得到支持,很明显,系统上没有正确配置(缺少库)。

使用gfortran代替,它与所有主要的Linux安装一起提供。 gfortran与g77兼容,但有一些非常小的例外。

如果你的构建脚本明确提到g77,请用gfortran替换它,并在必要时调整其他标志。

我认为gfortran-4.9是目前的Ubuntu软件包。