Fortran Coder

标题: linux的gfortran的code到IVF,需要做哪些处理??急! [打印本页]

作者: housechen    时间: 2014-8-30 23:28
标题: linux的gfortran的code到IVF,需要做哪些处理??急!

问一个很傻的问题:之前一直在用gfortran,现在要用IVF。已有makefile和源文件,请问需要如何调整。才能在IVF成功运行。

现在的编译器是IVF2013. 尝试过在IVF建立project,然后把源文件放进去。报错信息是:没有主程序。但是我的main已经放到源文件了。

应该是一个很傻的问题,请指教!谢谢



作者: 楚香饭    时间: 2014-8-31 06:56
如果make文件不长的话,帖出来。错误提示也帖出来。
作者: housechen    时间: 2014-8-31 09:04
错误是:
error LNK2019: unresolved external symbol _MAIN__ referenced in function _main        libifcoremdd.lib(for_main.obj)        

makefile是
[Make] 纯文本查看 复制代码
FF = gfortran
FFLAGS = -g -Wall
LIBS = -llapack

all: main clean

main: main.o calibrate.o function_callers.o functions.o rw.o csv_file.o numerical_jacobian.o newtons_method.o globals.o
        $(FF) -o main main.o calibrate.o function_callers.o functions.o rw.o csv_file.o numerical_jacobian.o newtons_method.o globals.o $(FFLAGS) $(LIBS)

main.o: main.f95 globals.o rw.o calibrate.o
        $(FF) -c $< $(FFLAGS)

calibrate.o: calibrate.f95 globals.o
        $(FF) -c $< $(FFLAGS)

function_callers.o: function_callers.f95 globals.o functions.o
        $(FF) -c $< $(FFLAGS)

functions.o: functions.f95 globals.o
        $(FF) -c $< $(FFLAGS)

inverse.o: inverse.f95 globals.o
        $(FF) -c $< $(FFLAGS)

numerical_jacobian.o: numerical_jacobian.f95 globals.o
        $(FF) -c $< $(FFLAGS)

newtons_method.o: newtons_method.f95 globals.o
        $(FF) -c $< $(FFLAGS)

rw.o: rw.f95 globals.o csv_file.o
        $(FF) -c $< $(FFLAGS)


csv_file.o: csv_file.f90
        $(FF) -c $< $(FFLAGS)


globals.o: globals.f95
        $(FF) -c $< $(FFLAGS)

clean:
        rm *.o
        rm *.mod


作者: fcode    时间: 2014-8-31 14:00
你是要换到 windows 上的 ivf 来编译吗?
把你的工程截个图吧。
作者: housechen    时间: 2014-8-31 14:35
本帖最后由 housechen 于 2014-8-31 14:36 编辑
fcode 发表于 2014-8-31 14:00
你是要换到 windows 上的 ivf 来编译吗?
把你的工程截个图吧。C:\User\CHEN Sihao\Picrures\QQ截图20140831142903

我是要在IVF编译。简短看过IVF的入门,以为直接创建工程,把源文件放进去即可,结果报错。请高手们指教!谢谢

QQ截图20140831142903.png (10.42 KB, 下载次数: 535)

QQ截图20140831142903.png

作者: 楚香饭    时间: 2014-8-31 15:02
你试试把所有的 *.f95 扩展名改为 .f90 扩展名,重新添加到工程里
作者: housechen    时间: 2014-8-31 16:29
本帖最后由 housechen 于 2014-8-31 16:32 编辑
楚香饭 发表于 2014-8-31 15:02
你试试把所有的 *.f95 扩展名改为 .f90 扩展名,重新添加到工程里

谢谢大虾们,貌似解决这个初步问题。
但是出现以下一系列错误。上intel官网论坛查了一下,貌似可能是内部编译错误。。
我猜更有可能是某几个变量的设置不一样导致一系列的错误,大虾有空帮忙支招。

QQ截图20140831162704.png (57.85 KB, 下载次数: 525)

QQ截图20140831162704.png

作者: 楚香饭    时间: 2014-8-31 16:40
这些都是常规代码错误,一个一个改吧
作者: 破烂弟    时间: 2014-8-31 16:53
1、文件“csv_file_1d.f90"与"csv_file_2d.f90"是什么文件?Makefile中么有提到。
2、libifcoremdd.lib文件的路径,列出来,看在path中么?
作者: housechen    时间: 2014-8-31 21:10
楚香饭 发表于 2014-8-31 16:40
这些都是常规代码错误,一个一个改吧

谢谢啊,剩下自己慢慢改。
作者: housechen    时间: 2014-8-31 21:10
破烂弟 发表于 2014-8-31 16:53
1、文件“csv_file_1d.f90"与"csv_file_2d.f90"是什么文件?Makefile中么有提到。
2、libifcoremdd.lib文件 ...

楼上应该解决了我的问题,谢谢啊。




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2