主题:请问怎么用.f或.f90文件生成.o文件
小弟最近在学一个matlab程序,里面用到了C++和fortran代码,由于在matlab中要使用C++代码,必须先把C++代码转换成.MEX文件,因为我的C++代码中用到了fortran77的一个文件,假定为a.f文件,将c++代码转换成.mex文件时,要使用到由a.f文件得到的a.o文件。以上是背景。
以下是问题:
1.我用的是win7系统,然后安装了vs2005和intel visual fortran 11.1,a.f文件里面只有subroutine函数,没有program,然后我打开intel visual fortran命令行,输入命令 ifort -o a.o a.f。就会出错,提示是:”libifcoremt.lib(for_main.obj):error LNK2019:无法解析的外部符号_MAIN_,该符号在函数_main中被引用。“ 请问下这个问题是怎么回事。2.我在一些地方看到说:intel visual fortran 不能在一个项目里面同时存在fortran和C++源代码。这是不是导致上面那个问题的原因呢。
3.我想完成的是:由一个只有subroutine函数,没有program的fortran77或fortran90(因为我想将fortran77文件改为fortran90文件)文件,得到一个.o文件,并能成功使用到MATLAB中,最后得到一个.MEX文件。
请大大们帮帮忙,谢谢了。