返回信息流【 以下文字转载自 ACM_ICPC 讨论区 】
发信人: doody (怪怪。。摇摇。。), 信区: ACM_ICPC
标 题: 如何在C程序的基础上创建DLL,并能在matlab中调用。。。。
发信站: 北邮人论坛 (Thu May 24 18:59:25 2007), 站内
这个还真不太了解
找了几篇paper
看不懂啊 大致意思是说利用matlab里mex这个函数
可是具体仍是不懂
如有会的人请指教 在下不尽感激
这是一条镜像帖。来源:北邮人论坛 / matlab / #1051同步于 2007/5/27
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
【求助】如何在C程序的基础上创建DLL,并能在matlab中调用。。
doody
2007/5/27镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
你的接口函数需要用mex
其他的都用c
然后在matlab下面编译一下就可以了,
在matlab7.1以前的版本中产生的是.dll
以后的版本产生的是.mexw32
不用用是一样的,直接调用就可以了
1)新建工程:Win32 Dynamic Link-Library
2)创建myFunc.def,myFunc.def的内容如下
LIBRARY myFunc.mexw32
EXPORTS mexFunction
3)在VC/IDE-〉Project-〉Setting-〉C/C++-〉Preprocesser-〉Additional Include Directories
添加MATLAB_HOME\extern\include
4)在VC/IDE-〉Project-〉Setting-〉C/C++-〉Preprocesser-〉Preprocessor definitions
添加MATLAB_MEX_FILE
5)将VC/IDE-〉Project-〉Setting-〉Link-〉General-〉Output File Name文件名的后缀改为.mexw32
6)在VC/IDE-〉Project-〉Setting-〉Link-〉General-〉Object/Library Modules中
添加libmex.lib,libmx.lib,libmat.lib
7)在VC/IDE-〉Project-〉Setting-〉Link-〉Input-〉Additional Library Path中
添加MATLAB_HOME\extern\lib\win32\microsoft
8)在VC/IDE-〉Project-〉Setting-〉Link-〉Input-〉Project Options中添加
/def:"myFunc.def"
赞。
现在没有用IDE写,纯用notepad,太费神了。
【 在 cryppie 的大作中提到: 】
: 1)新建工程:Win32 Dynamic Link-Library
: 2)创建myFunc.def,myFunc.def的内容如下
: LIBRARY myFunc.mexw32
: ...................