计算化学公社

 找回密码 Forget password
 注册 Register
Views: 3427|回复 Reply: 4
打印 Print 上一主题 Last thread 下一主题 Next thread

[Fortran] 求助!Fortran中如何调用子程序啊?

[复制链接 Copy URL]

14

帖子

0

威望

47

eV
积分
61

Level 2 能力者

我编写了一个主程序,需要链接一个子程序,用CALL命令来调用它,但总是显示E:/aaa/F3.f90:56: undefined reference to `f3_order_parameter_',未定义这个子程序?这是为什么?谢谢大家了!

4104

帖子

4

威望

8869

eV
积分
13053

Level 6 (一方通行)

MOKIT开发者

2#
发表于 Post on 2019-8-7 16:46:44 | 只看该作者 Only view this author
你忘了编译subroutine吧···举例:
gfortran sub.f90 -c
gfortran main.f90 -c
gfortran sub.o main.o -o main
自动做多参考态计算的程序MOKIT

14

帖子

0

威望

47

eV
积分
61

Level 2 能力者

3#
 楼主 Author| 发表于 Post on 2019-8-8 11:16:56 | 只看该作者 Only view this author
zjxitcc 发表于 2019-8-7 16:46
你忘了编译subroutine吧···举例:
gfortran sub.f90 -c
gfortran main.f90 -c

这是我主程序的最后一段:
call F3_Order_Parameter(0,u,idatom,x,y,z,3.5,0.,12.,0.,12.,0.,12.,1,1,1,'f3_result.txt')
   
  endprogram
这是子程序的开始:
subroutine F3_Order_Parameter(timestep,number_Ow,id_Ow,x_Ow,y_Ow,z_Ow,tolarance,xlo,xhi,ylo,yhi,zlo,zhi,xp,yp,zp,filename)

implicit none
您说的这个是放在那里呢?您看着是那里出错了呢?

4104

帖子

4

威望

8869

eV
积分
13053

Level 6 (一方通行)

MOKIT开发者

4#
发表于 Post on 2019-8-8 11:21:06 | 只看该作者 Only view this author
Gdkly 发表于 2019-8-8 11:16
这是我主程序的最后一段:
call F3_Order_Parameter(0,u,idatom,x,y,z,3.5,0.,12.,0.,12.,0.,12.,1,1,1, ...

我说的是编译命令啊,是命令行啊,不是Fortran代码
自动做多参考态计算的程序MOKIT

14

帖子

0

威望

47

eV
积分
61

Level 2 能力者

5#
 楼主 Author| 发表于 Post on 2019-8-9 14:01:40 | 只看该作者 Only view this author
zjxitcc 发表于 2019-8-8 11:21
我说的是编译命令啊,是命令行啊,不是Fortran代码

哦哦 这样啊  知道了 谢谢!

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-14 06:50 , Processed in 0.173294 second(s), 20 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list