声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3869|回复: 3

[Fortran] 急:关于MATLAB和fortran的接口问题!

[复制链接]
发表于 2009-5-17 22:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
各位老师,大家好!
      小弟遇到一些问题,想问一下:fortran被MATLAB调用的问题。
       调用的过程是:在调用的过程中MATLAB先给fortran传递三个参数,fortran利用传过来的这三个参数进行计算后再把另一个结果参数(一个值)传给MATLAB,所以我需要生成一个fortran语言的mex文件,编好后刚开始build时,有10个错误,如下:

                Linking...
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MEXERRMSGTXT@8]_MEXERRMSGTXT@8[/email]
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MXGETM@4]_MXGETM@4[/email]
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MXGETN@4]_MXGETN@4[/email]
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MXISNUMERIC@4]_MXISNUMERIC@4[/email]
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MXCREATEFULL@12]_MXCREATEFULL@12[/email]
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MXGETPR@4]_MXGETPR@4[/email]
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MXCOPYPTRTOREAL8@12]_MXCOPYPTRTOREAL8@12[/email]
                mexfile_CaclT90.obj : error LNK2001: unresolved external symbol [email=_MXCOPYREAL8TOPTR@12]_MXCOPYREAL8TOPTR@12[/email]
                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 [email=_MEXERRMSGTXT@8]_MEXERRMSGTXT@8[/email]
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
       我真的不知道改如何解决了,想麻烦一下各位程序高手帮帮忙,小弟在此不甚感激!真心谢谢各位!
回复
分享到:

使用道具 举报

 楼主| 发表于 2009-5-18 14:31 | 显示全部楼层
怎么都没人帮帮忙,给予一下帮助!谢谢大家了!
 楼主| 发表于 2009-5-19 09:23 | 显示全部楼层
如今通过更改只含有一个错误了,想麻烦哪位帮帮忙,帮解决一下这个错误!谢谢!
error LNK2001: unresolved external symbol _MEXERRMSGTXT@8
发表于 2010-3-18 08:31 | 显示全部楼层

我也遇到类似问题

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.
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-23 14:32 , Processed in 0.086268 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表