11 bash command-line compile make
我正在安装MOOG,当make -f Makefile.maclap
我收到错误时:
$ make -f Makefile.maclap
g77 -w -c -o Abfind.o Abfind.f
make: g77: No such file or directory
make: *** [Abfind.o] Error 1
Run Code Online (Sandbox Code Playgroud)
经过网上研究,我认为,由于我有 gcc-5,因此我的计算机上不存在命令 g77。
因此,我根据堆栈交换问题alias g77=/usr/local/bin/gfortran-5
尝试使用 gfortran 编译 fortran 代码。
现在,当我g77
看到gfortran-5: fatal error: no input files compilation terminated
,表明它g77
正在作为编译的工作。
但是当我make -f Makefile.maclap
仍然收到错误时:
$ make -f Makefile.maclap
g77 -w -c -o Abfind.o Abfind.f
make: g77: No such file or directory
make: *** [Abfind.o] Error 1
Run Code Online (Sandbox Code Playgroud)
如何获得 make 命令以使用 fortran-5 来编译文件 Abfind.o 和 Abfind.f?
我怎样才能顺利完成make
和make install
步骤获得该软件包运行?
该make
程序只会看到实际是文件(或目录)的名称。它对 shell 别名一无所知。
而不是alias
,如果您将g77
您的$PATH
作为符号链接,那将起作用。在许多环境中,如果您有一个$HOME/bin
目录,它会自动添加到您的$PATH
. (如果没有,手动执行此操作很简单,详细信息取决于您的外壳)。
如果是更简单的情况:
cd
mkdir bin
cd bin
ln -s /usr/local/bin/gfortran-5 g77
Run Code Online (Sandbox Code Playgroud)
然后注销,重新登录(让shell的初始化脚本更新路径等)
小智 5
如果你不想像@Thomas 建议的那样创建符号链接,你基本上可以在 Makefile 中创建一个别名,方法是将此行放置在 Makefile 顶部附近的某处:
G77 := /usr/local/bin/gfortran-5
Run Code Online (Sandbox Code Playgroud)
然后,在你的目标中的某个地方,像这样使用它:
$(G77) -w -c -o Abfind.o Abfind.f
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10464 次 |
最近记录: |