g77中的Make和Shell命令选项

g0ѭ和
shell
选项在g77中意味着什么?例如,如果我的Makefile中有以下脚本:
FC = g77
FFLAGS = -O2 -mno-cygwin
LDFLAGS =
CD = cd
LN = ln
LNFLAGS = -s
MAKE = /bin/make
RM = rm
RMFLAGS = -f
SHELL = /bin/sh
这是否意味着
make
操作需要使用
/bin/make.exe
? 旁注:当我运行编译时,使用上面的命令行,我收到一个错误:   / bin / sh:第4行:制作:命令不是   发现 不确定这两者是否相关。 编辑:这是我的Makfile:
arpacklib:
    @( 
    for f in $(DIRS); 
    do 
        $(CD) $$f; 
        $(ECHO) Making lib in $$f; 
        $(MAKE) $(PRECISIONS); 
        $(CD) ..; 
    done );
    $(RANLIB) $(ARPACKLIB)
    
已邀请:
这些只是保存计算机上程序位置的变量。可能会有像
$(SHELL) a_shell_script.sh
这样的规则使用这些变量。
FC
CD
LN
RM
是相似的,它们只是没有明确列出的路径。将程序作为变量可以很容易地更改它们,例如,如果您想使用不同的版本。 您的错误看起来像shell正在尝试运行命令
Making
。可能的原因是在此前面有一个未定义的变量,例如规则
all:
    $(ECHO) Making something
当跑步而不是
echo Making something
时会扩大到
Making something
。没有看到我能想到的最好的相关线。     

要回复问题请先登录注册