gpt4 book ai didi

linux - 生成文件错误 "/usr/bin/f77: Illegal option: -autodouble"

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:20:07 25 4
gpt4 key购买 nike

我写了一个make文件如下:

COMPFLAGS     = -O3 -autodouble  

CFLAGS = $(COMPFLAGS)
PFLAGS = $(COMPFLAGS)
FFLAGS = $(COMPFLAGS)
CCFLAGS = $(COMPFLAGS)
CXXFLAGS = $(COMPFLAGS)

LD = ifort

LDFLAGS = $(COMPFLAGS)

MAKEFILE = Makefile

OBJS = f1.o \
f2.o \
f3.o \

PROGRAM = f1

all: $(PROGRAM)

%.o: %.f90
@$(LD) $(COMPFLAGS) -c $<

$(PROGRAM): $(OBJS) $(MAKEFILE)

@$(LD) $(LDFLAGS) $(OBJS) -o $(PROGRAM)
@echo "done"

clean:
@rm -f $(OBJS) core

当我执行 make 时,出现以下错误:

f77 -O3 -autodouble    -c -o f1.o f1.f
/usr/bin/f77: Illegal option: -autodouble
make: *** [f1.o] Error 255

我应该注意到没有*.f文件,所有文件都是*.f90

你能告诉我哪里出错了吗?

非常感谢。

最佳答案

这看起来很不寻常:

LD  =   ifort
...

%.o: %.f90
@$(LD) $(COMPFLAGS) -c $<

LD 是链接器,不是编译器。也许是这样的:

CC = ifort
...

%.o: %.f90
@$(CC) -std=f90 $(COMPFLAGS) -c $<

您可能还需要 -x 选项来告诉机器是 Fortran 90 而不是要预处理的东西:

%.o: %.f90
@$(CC) -x f90 -std=f90 $(COMPFLAGS) -c $<

关于linux - 生成文件错误 "/usr/bin/f77: Illegal option: -autodouble",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44489333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com