MrLIN
发表于 2018-7-24 20:39:06
fcode 发表于 2018-7-24 20:13
从你之前的回答
来看,你的 工程是 32 位的。按以下方法切换为64位
厉害了,果然是,少了很多错误,还剩3个:-lol
kyra
发表于 2018-7-24 20:41:36
本帖最后由 kyra 于 2018-7-24 20:49 编辑
现在是缺少主程序和 yprime 函数了。前者需要你自己补充,后者也应该是用户书写的,不是matlab提供的
MrLIN
发表于 2018-7-24 21:13:53
kyra 发表于 2018-7-24 20:41
现在是缺少主程序和 yprime 函数了。前者需要你自己补充,后者也应该是用户书写的,不是matlab提供的
...
好像是这样的,这是MATLAB里混合编程的范例,我换了个范例,只提示两个错误:
错误 1 error LNK2019: 无法解析的外部符号 MAIN__,该符号在函数 main 中被引用 libifcoremdd.lib(for_main.obj)
错误 2 fatal error LNK1120: 1 个无法解析的外部命令 x64\Debug\fortran_matlab_test.exe
如果自己编写mex到这一步是否可以认为成功了呢?
还有个问题请教,matlab里关于混合编程的语言配置问题, 选择mex -setup FORTRAN,出现以下错误该如何处理?
kyra
发表于 2018-7-25 08:30:14
你的图片里用的是 mex -setup 而不是 mex -setup fortran
MrLIN
发表于 2018-7-25 09:05:49
kyra 发表于 2018-7-25 08:30
你的图片里用的是 mex -setup 而不是 mex -setup fortran
我试了三种方式:
第一种,先输入mex -setup 再点提示中的mex -setup FORTRAN
第二种,直接输入mex -setup fortran
第三种,直接输入mex -setup FORTRAN(区分下大小写,哈哈)
三种操作最终显示的错误都一样的
kyra
发表于 2018-7-25 09:13:38
说明 matlab 没有检测到你安装了被它支持的编译器(中的任何一款)
每个 matlab 版本都有自己支持的编译器列表,这些列表中也指定了编译器的版本,不匹配的话没法用。
(这样可能导致你的matlab不能调用fortran代码,但fortran调用matlab应该没问题)
MrLIN
发表于 2018-7-25 10:21:17
kyra 发表于 2018-7-25 09:13
说明 matlab 没有检测到你安装了被它支持的编译器(中的任何一款)
每个 matlab 版本都有自己支持的编译器 ...
我设置车C++的语言可以正常运行,唯独这个FORTRAN的不可以。。。:'(