Fortran Coder

查看: 15666|回复: 6
打印 上一主题 下一主题

[编译器] Fortran的makefile文件中如何处理.mod

[复制链接]

35

帖子

17

主题

0

精华

熟手

F 币
136 元
贡献
240 点
跳转到指定楼层
楼主
发表于 2018-5-21 14:59:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#主要makefile的整体实现,$(objects)是所有的.o 文件集
obj/%.o : src/%.f90
     mkdir -p obj/; ifort -cpp -c $< -o $@
$(program): $(objects)
     ifort $(objects) -o $@

问题:现在处理过程中.mod文件均生成在根目录中,
如何在makefile处理过程中将.mod文件放到单独的文件夹中,并进行编译.o文件

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

490

帖子

4

主题

0

精华

大宗师

F 币
3298 元
贡献
1948 点

水王勋章元老勋章热心勋章

沙发
发表于 2018-5-21 15:09:50 | 只看该作者
lz若是在Windows平台下用VS+IVF编译环境,建议直接IDE里面处理,没必要折腾Makefile
若是在Linux平台下,那么先看完make入门介绍
http://www.gnu.org/software/make/manual/make.html

35

帖子

17

主题

0

精华

熟手

F 币
136 元
贡献
240 点
板凳
 楼主| 发表于 2018-5-21 15:40:29 | 只看该作者
pasuka 发表于 2018-5-21 15:09
lz若是在Windows平台下用VS+IVF编译环境,建议直接IDE里面处理,没必要折腾Makefile
若是在Linux平台下,那 ...

程序想在win和linux两个平台下编译,win平台使用IDE处理是没有问题的。
基础的makefile是学习过一些,主要是在linxu平台下,使用自动化变量进行处理时,想把.mod文件单独放置时,.o文件编译过不去,不知道如何处理。
希望大神有没有简单的示例,或者github上开源的makefile文件,给一定的启示?

490

帖子

4

主题

0

精华

大宗师

F 币
3298 元
贡献
1948 点

水王勋章元老勋章热心勋章

地板
发表于 2018-5-21 15:47:30 | 只看该作者
本帖最后由 pasuka 于 2018-5-21 15:50 编辑
ksfengjia 发表于 2018-5-21 15:40
程序想在win和linux两个平台下编译,win平台使用IDE处理是没有问题的。
基础的makefile是学习过一些,主 ...

原来是希望跨平台编译,那么直接上CMAKE一步到位
https://cmake.org/

101

帖子

0

主题

0

精华

大师

F 币
670 元
贡献
299 点

规矩勋章元老勋章新人勋章

5#
发表于 2018-5-21 16:14:42 | 只看该作者
-module path
指定 .mod 文件生成的路径
-I
指定搜索 .mod 文件的路径
天之道,损有余而补不足

35

帖子

17

主题

0

精华

熟手

F 币
136 元
贡献
240 点
6#
 楼主| 发表于 2018-5-21 16:14:49 | 只看该作者
pasuka 发表于 2018-5-21 15:47
原来是希望跨平台编译,那么直接上CMAKE一步到位
https://cmake.org/

不使用cmake,自己写makefile,目标不是实现,是能力提升,自己要能理清编译逻辑。
想解决的是实际问题是makefile过程中,用不同文件夹分开放置.o、.mod文件,.o文件放置没有问题,.mod文件如何放置、处理不大会

4

帖子

0

主题

0

精华

熟手

F 币
210 元
贡献
71 点

规矩勋章

7#
发表于 2020-7-5 14:34:05 | 只看该作者
胡文刚 发表于 2018-5-21 16:14
-module path
指定 .mod 文件生成的路径
-I

-module path
怎么理解?
我尝试了
-J path 可以指定生成路径; -I path 可以指定搜索路径
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-11-23 06:20

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表