声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1158|回复: 3

[混合编程] Matcom 生成 exe 文件不能运行

[复制链接]
发表于 2007-11-24 21:14 | 显示全部楼层 |阅读模式

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

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

x
写了个M文件,在Matlab命令行里调用没问题,能画出图来;用mcc -m命令生成EXE文件也能运行画出图来,可是用Matcom的Compile to exe生成EXE文件,运行后却说其中一行不能运行,错误如下:
function [y1,y2,y3,y4,y5,y6]=feval(fun,varargin)
switch fun
otherwise
  error([fun '.m was not compiled. Add "%# call ' fun '" to the program.']);
end
黄颜色是出错行的代码,如下:
b1=-sqrt(r.^2-(r-ap-ht).^2);
                b2=f-sqrt(r.^2-(r-ap-hp).^2);
                b3=r*sin(acos(sqrt(f.^2+(hp-ht).^2)/(2*r))+atan((hp-ht)/f));
                m=strcat('sqrt(abs(',num2str(r),'.^2-x.^2))-',num2str(r),'-',num2str(ap));
                M=inline(m);
                S1=quad(M,b1,b2);
                n=strcat('sqrt(abs(',num2str(r),'.^2-x.^2))-sqrt(abs(',num2str(r),'.^2-(x-',num2str(f),').^2))+',num2str(ht),'-',num2str(hp));
                N=inline(n);
                S2=quad(N,b2,b3);
                Ac=S1+S2;
望高手指教。

[ 本帖最后由 eight 于 2007-11-24 22:52 编辑 ]
回复
分享到:

使用道具 举报

发表于 2007-11-24 22:52 | 显示全部楼层
原帖由 Suede 于 2007-11-24 21:14 发表
写了个M文件,在Matlab命令行里调用没问题,能画出图来;用mcc -m命令生成EXE文件也能运行画出图来,可是用Matcom的Compile to exe生成EXE文件,运行后却说其中一行不能运行,错误如下:
function [y1,y2,y3,y ...

看不懂你的描述:哪里是代码,哪里是出错提示
 楼主| 发表于 2007-11-25 11:41 | 显示全部楼层
m=strcat('sqrt(abs(',num2str(r),'.^2-x.^2))-',num2str(r),'-',num2str(ap));
就是这一行不能运行!!!
这是提示出的错误:error([fun '.m was not compiled. Add "%# call ' fun '" to the program.']);
谢谢
发表于 2007-11-25 17:22 | 显示全部楼层
原帖由 Suede 于 2007-11-25 11:41 发表
m=strcat('sqrt(abs(',num2str(r),'.^2-x.^2))-',num2str(r),'-',num2str(ap));
就是这一行不能运行!!!
这是提示出的错误:error([fun '.m was not compiled. Add "%# call ' fun '" to the program.']);
谢谢

feval 这个函数在你的代码里面是否使用了?如果是,请先看看精华贴
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-18 14:38 , Processed in 0.074501 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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