| 查看: 1578 | 回复: 4 | ||
[求助]
fortran程序如何在linux系统的服务器上进行编译呢?makefile文件怎么写呢? 已有1人参与
|
|
test文件夹中有如下文件: H.f p.f s.f Makefile Makefile文件如下: FINCLUDES=p.f FFLAGS = -O3 -xHOST -ipo -static -no-prec-div FC=ifort SOURCES= H.f s.f OBJECTS = $(SOURCES:.f=.o) TARGET=H.exe $(TARGET): $(OBJECTS) $(FC) $(FFLAGS) -o $(TARGET) $(OBJECTS) clean:; rm -f $(OBJECTS) $(TARGET) 但是在服务器上qsub Makefile后,出现如下错误: line 2: FFLAGS: command not found line 4: H.f: command not found line 5: SOURCES:.f=.o: command not found line 5: OBJECTS: command not found line 6: TARGET: command not found line 7: OBJECTS: command not found line 8: FC: command not found line 8: FFLAGS: command not found line 8: TARGET: command not found line 8: OBJECTS: command not found line 8: -o: command not found line 9: clean:: command not found line 9: OBJECTS: command not found line 9: TARGET: command not found 为何会出现以上问题呢?是哪里错了?还是我提交的缺少mhd?,或者我应该提交qsub mhd.pbs文件呢?求解答!谢谢啦! |
» 猜你喜欢
纳米粒子粒径的测量
已经有5人回复
国自然申请面上模板最新2026版出了吗?
已经有6人回复
推荐一本书
已经有8人回复
溴的反应液脱色
已经有4人回复
参与限项
已经有5人回复
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
» 本主题相关价值贴推荐,对您同样有帮助:
关于VASP里面一些linux下小程序的使用
已经有4人回复
服务器上的linux版本的高斯程序,如何用SSH进行wfn文件的生成
已经有5人回复
Fortran程序在linux下编译的问题
已经有5人回复
Error in opening the compiled module file. Check INCLUDE paths.
已经有7人回复
Linux下编译F程序的问题
已经有4人回复
linux系统下求fortran编译器
已经有12人回复
[VASP编译]五 Makefile中fortran Flags的解释
已经有18人回复
Linux ubantu下gcc编译出现错误,如何解决?这是两次makefile的结果。
已经有4人回复
编译vasp主程序时,makefile中的链接库选择问题
已经有15人回复
Dalton2011并行编译详记
已经有33人回复
【求助】如何将源代码在linux下运行?
已经有8人回复
【ChemiAndy个人文集】NBO5.G Standalone (GENNBO) Linux下的编译和使用
已经有12人回复
【原创】用pgi10.0编译vasp5.2
已经有12人回复
【求助】vasp5.2 在centos linux上的编译
已经有22人回复
【答案】应助回帖
感谢参与,应助指数 +1
|
qsub提交的本质是一个shell脚本,而Makefile是专门给make命令准备的,队列系统如果按照shell命令来辨别的话肯定不认,所以出现一堆错误。 你的pbs脚本可以这样准备: #!/bin/bash #PBS -S /bin/bash #PBS -N makefile_test #PBS -l nodes=1:ppn=4 NPROCS=`wc -l $PBS_NODEFILE` make -j${NPROCS} 将上面的内容保存为make.pbs.sh,然后 qsub make.pbs.sh就可以了。make会自动寻找当前目录下的Makefile文件,并执行。如果需要指定某个Makefile,可以将最后一行变为: make -j${NPROCS} -f make_file,其中make_file就是你需要指定的Makefile文件名。上面的PBS脚本内容你可以根据自己的实际需要进行修改。如果使用SGE的话,脚本示例如下: #!/bin/bash #$ -S /bin/bash #$ -N makefile_test #$ -pe orte 4 NPROCS=`wc -l $SGE_NODEFILE` make -j${NPROCS} 其它的脚本系统就不清楚了。你可能需要先了解自己使用的队列系统和脚本编写的基础知识。 |

2楼2014-12-25 15:07:55
3楼2014-12-25 18:36:22

4楼2014-12-25 20:35:25
|
我把mpirun去掉了,改成以下形式 文件有: H.f p.f s.f Makefile make.pbs.sh Makefile里面没有动,还是最上面我贴出的那些。 make.pbs.sh如下: #!/bin/bash #PBS -N test #PBS -o test.stdout #PBS -e test.error #PBS -l nodes=1:ppn=1 #PBS -q batch PBS_O_WORKDIR=/home/code/ cd $PBS_O_WORKDIR NPROCS=`wc -l $PBS_NODEFILE` make -j${NPROCS} 现在出现的问题是: make: Nothing to be done for `/opt/gridview//pbs//dispatcher/aux//7131.node25'. |
5楼2014-12-26 16:11:44












回复此楼