急:关于MATLAB和fortran的接口问题!
各位老师,大家好!小弟遇到一些问题,想问一下:fortran被MATLAB调用的问题。
调用的过程是:在调用的过程中MATLAB先给fortran传递三个参数,fortran利用传过来的这三个参数进行计算后再把另一个结果参数(一个值)传给MATLAB,所以我需要生成一个fortran语言的mex文件,编好后刚开始build时,有10个错误,如下:
Linking...
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MEXERRMSGTXT@8
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MXGETM@4
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MXGETN@4
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MXISNUMERIC@4
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MXCREATEFULL@12
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MXGETPR@4
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MXCOPYPTRTOREAL8@12
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MXCOPYREAL8TOPTR@12
dfor.lib(DFORMAIN.OBJ) : error LNK2001: unresolved external symbol _MAIN__
Debug/mexfile_CaclT90.exe : fatal error LNK1120: 9 unresolved externals
Error executing link.exe.
mexfile_CaclT90.exe - 10 error(s), 0 warning(s)
我通过论坛里一个高手的指点,采用方法如下:
在tools->directory 里设置 include 和 lib目录 记住要包括以下目录
include ->C:\Program Files\Microsoft Visual Studio\DF98\Include
include->C:\Program Files\Microsoft Visual Studio\DF98\IMSL\Include
include->D:\MATLAB\EXTERN\INCLUDE
lib->D:\MATLAB\EXTERN\LIB\WIN32
lib->D:\MATLAB\EXTERN\LIB\WIN32\DIGITAL\DF60
lib->C:\Program Files\Microsoft Visual Studio\DF98\IMSL\Lib
lib->C:\Program Files\Microsoft Visual Studio\DF98\Lib
并在project->setting->link->Object/library modules里添加libmx.lib libmat. lib libeng.lib
我按照以上方法进行设置,编译fortran的时候错误由10个变为了只有3个,但这三个错误不知道要如何改,还存在的错误如下:
Linking...
mexfile_CaclT90.obj : error LNK2001: unresolved external symbol _MEXERRMSGTXT@8
dfor.lib(DFORMAIN.OBJ) : error LNK2001: unresolved external symbol _MAIN__
Debug/mexfile_CaclT90.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
mexfile_CaclT90.exe - 3 error(s), 0 warning(s)
我使用的编译器是:CVF6.6
我真的不知道改如何解决了,想麻烦一下各位程序高手帮帮忙,小弟在此不甚感激!真心谢谢各位! 怎么都没人帮帮忙,给予一下帮助!谢谢大家了! 如今通过更改只含有一个错误了,想麻烦哪位帮帮忙,帮解决一下这个错误!谢谢!
error LNK2001: unresolved external symbol _MEXERRMSGTXT@8
我也遇到类似问题
10-3-18 08:30你好我在用Fortran和chemkin编译连接过程中,单纯的用Fortran编译我的小程序出现如下错误,与你遇到的问题类似,请问如何解决的?谢谢!
Creating library Debug/creslaf_user_routines.lib and object Debug/creslaf_user_routines.exp
creslaf_user_routines.obj : error LNK2001: unresolved external symbol _CKCOMP@24
dfor.lib(DFORMAIN.OBJ) : error LNK2001: unresolved external symbol _MAIN__
Debug/creslaf_user_routines.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
页:
[1]