可以查找fortran 77文件,但不能查找fortran 90文件

空钱

我在使用make编译混合的C ++ / fortran90代码时遇到问题。如果我改用fortran77代码作为子例程,则编译没有问题。

文件系统的结构:

~/src/working/:
  main.cpp
  Makefile

~/src/lib/:
  f77library.f
  f90library.f90
  cpplibrary.cpp

~/src/headers/:
  cpplibrary.h

生成文件如下所示:

VPATH = ../headers/:../lib/

F77 = gfortran
FC = gfortran
CXX = g++

FCFLAGS = -I/home/user/src/headers/     #These may be redundant with VPATH
FFLAGS = -I/home/user/src/headers/
CXXFLAGS = -I/home/user/src/headers/

main77 = main.o f77library.o cpplibrary.o
main90 = main.o f90library.o cpplibrary.o


main77 : $(main77)
    $(CXX) -o main77 $(main77) -lgfortran

main90 : $(main90)
    $(CXX) -o main90 $(main90) -lgfortran

main77.o : main77.cpp cpplibrary.h
main90.o : main90.cpp cpplibrary.h
cpplibrary : cpplibrary.cpp cpplibrary.h
f77library : f77library.f
f90library : f90library.f90

每个fortran文件都包含完全相同的子例程,并且每个子例程都是独立文件。如果我手动进行编译,则效果很好,例如,

gfortran -c ../lib/f90library.f90
g++ -c ../lib/cpplibrary.cpp -I../headers/
g++ -c main90.cpp -I../headers/
g++ -o main90 main90.o f90library.o cpplibrary.o

当我使用makefile编译f77时:make main77它可以正常编译。make main90但是,当我尝试时,出现以下错误信息

g++ -o main90 main90.o f90library.o cpplibrary.o -lgfortran
g++: f90library.o: No such file or directory

简而言之,f90和f77版本之间的所有内容都是相同的,并且应该没有编译错误。为什么不能make识别lib目录中需要编译的.f90文件?

下坡从这里

显然,Make不提供用于编译.f90文件的隐式规则。但是您仍然可以实现所需的功能,例如,通过添加模式规则

%.o: %.f90
    $(FC) $(FFLAGS) -c $<

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用NetCDF的R CMD SHLIB Fortran 90文件

来自分类Dev

查找唯一文件

来自分类Dev

查找临时Windows 10文件

来自分类Dev

Fortran从if语句内部写入同一文件

来自分类Dev

查找H5文件的意图

来自分类Dev

MP3文件查找已错误

来自分类Dev

如何从gfortran中的* .F90文件生成* .f90文件?

来自分类Dev

为什么从文件末尾查找BZip2文件而不是Gzip文件?

来自分类Dev

如何与gfortran一起编译f77和f90文件

来自分类Dev

如何在.PST文件中查找丢失的Outlook 2007文件夹?

来自分类Dev

使用gfortran编译* .f90文件

来自分类Dev

查找要上传的MP4文件的尺寸(高度x宽度)

来自分类Dev

如何查找已更改的唯一文件列表

来自分类Dev

在AVI,H.264文件中查找关键帧

来自分类Dev

如何通过命令行查找mp3文件的比特率?

来自分类Dev

在MP3文件中查找main_data_begin

来自分类Dev

如何查找用于PowerShell集成控制台的profile.ps1文件?

来自分类Dev

如何通过命令行查找mp3文件的比特率?

来自分类Dev

如何以编程方式从android中的sdcard查找mp3文件

来自分类Dev

Bash-在同一文件中查找并替换为新行

来自分类Dev

在两个目录之间查找唯一文件(递归)

来自分类Dev

如何查找Windows 7文件传输历史记录?

来自分类Dev

查找 bootstrap 词缀插件 js 唯一文件

来自分类Dev

AWK 在同一文件的两列中查找公共数据

来自分类Dev

在哪里可以找到screenlog.0文件?

来自分类Dev

查找所有已修改的svn文件并复制在同一文件夹结构中修改的文件

来自分类Dev

m3u8文件可以具有mp4文件网址吗?

来自分类Dev

从一个文件中查找不在另一文件行中的字符串

来自分类Dev

如何在不首先下载的情况下在AWS Lambda函数中查找S3文件?

Related 相关文章

热门标签

归档