MATLAB Coder: Toolbox Function

5 次查看(过去 30 天)
I'm developing my own Toolbox called 'Mix Toolbox'.
My folders struct is:
+mix/amp2dbfs.m
function [dbfs] = amp2dbfs(sample)
%AMP2DBFS return the sample amplitude value using dBFS scale
%
% USAGE:
% [dbfs] = amp2dbfs(sample)
coder.inline('never');
dbfs = 20 * log10(abs(sample));
end
I call this function typing:
out = mix.amp2dbfs(value);
I'm trying to compile this function to MEX. In the MATLAB Coder I got:
-> Generating trial code: OK
-> Building MEX: OK
-> Running test file: ERROR
The invoked code did not call entry-point function: 'amp2dbfs'.
I tested the generated MEX file and it works.
I think that this MATLAB Coder error is only about the call 'amp2dbfs' and not 'mix.amp2dbfs'.
My question is: Is there a way to remove the final error in "Running test file" process?

采纳的回答

Denis Gurchenkov
Denis Gurchenkov 2018-2-22
编辑:Denis Gurchenkov 2019-3-19
MATLAB Coder App does not support generating code for an entry-point function that is nested inside a package. I can think of the following workarounds:
  • use the command-line interface ("codegen") -- cd to +mix folder, call codegen from there
  • move amp2dbfs to outside of +mix
  • Create a separate entry point function (e.g. "main.m") that calls mix.amp2dbfs and generate code for that entry-point function.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Coder 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by