为什么我不能创建墨西哥人函数实现C函数调用多个函数在多个文件?
3视图(30天)
显示旧的评论
我已经从多个C C函数调用其他函数文件因此我有一些H文件。我设置编译器:微软软件开发工具包(SDK) 7.1。我创建了我的墨西哥人的源文件,所以它是如何描述的帮助。我试着构建墨西哥人通过输入函数:
墨西哥人“codegen \ lib \ quadraticSolver \ quadraticSolver.c”…
“codegen \ lib \ quadraticSolver \ quadraticSolver_initialize.c”…
“codegen \ lib \ quadraticSolver \ quadraticSolver_terminate.c”…
“codegen \ lib \ quadraticSolver \ rt_nonfinite.c”…
“codegen \ lib \ quadraticSolver \ rtGetNaN.c”…
“codegen \ lib \ quadraticSolver \ rtGetInf.c”…
“codegen \ lib \ quadraticSolver \ quadraticSolver.h”…
“codegen \ lib \ quadraticSolver \ quadraticSolver_initialize.h”…
“codegen \ lib \ quadraticSolver \ quadraticSolver_terminate.h”…
“codegen \ lib \ quadraticSolver \ rt_nonfinite.h”…
“codegen \ lib \ quadraticSolver \ rtGetNaN.h”…
“codegen \ lib \ quadraticSolver \ rtGetInf.h”…
“codegen \ lib \ quadraticSolver \ rtwtypes.h”…
“codegen \ lib \ quadraticSolver \ quadraticSolver_types.h”;
这个错误出现:
codegen \ lib \ quadraticSolver \ quadraticSolver。h:致命错误LNK1107:无效或腐败文件:在0 x23d无法读取
MATLAB C: \ PROGRA ~ 1 \ \ R2013A \ BIN \墨西哥人。PL:错误:链接的“quadraticSolver。mexw64”失败了。
错误使用墨西哥人(第206行)无法成功完成。
mex_maker误差(1号线)墨西哥人' codegen \ lib \ quadraticSolver \ quadraticSolver。c“……
为什么?
0评论
接受的答案
Kaustubha Govind
2013年5月17日
看来,这是使用MATLAB编码器生成代码——这是正确的吗?如果是的,似乎生成的代码是编译成库(路径
codegen \ lib
暗示),这意味着没有的文件
mexFunction
入口点,需要编译成一个MEX-file。你可能只是想运行。bat (。sh在Linux上)文件应下
codegen \ lib \ quadraticSolver
编译代码到一个图书馆。
另外,一般来说,你不必指定头文件
墨西哥人
命令,指定源文件并指定头文件使用的位置
-我
选择。