tmwtypes.h required in R2018a generated code
26 views (last 30 days)
Show older comments
Analog Devices, Inc. Systems Development Group
on 5 Apr 2018
Answered: cui,xingxing
on 12 Oct 2019
Hi,
I have a project that has been generating standalone C code from R2017b fine and I recently began testing the codegen tools with R2018a. When switching to R2018a the generated code now requires a header "tmwtypes.h". This is included with R2018a, but under a specific MathWorks license. So I cannot use it for my GPL project.
Is there a workaround for this or a flag I'm missing?
-- Reproduction Steps:--
The MATLAB project is available here: https://github.com/analogdevicesinc/ad936x-filter-wizard under the codegen-support branch.
Add the "test" folder to path and run the "generate_internal_designer" script to create the DLL source. Under the codegen->dll->internal_design_filter_cg folder the header "rtwtypes.h" has this header dependency.
0 Comments
Answers (2)
Andy
on 9 Apr 2018
Hi Travis,
If you set a specific "target hardware device" then rtwtypes.h won't include tmwtypes.h. In other words add something like the following on line 19 of your "generate_internal_designer.m" script:
cfg.HardwareImplementation.TargetHWDeviceType = 'Intel->x86-64 (Windows64)';
If you want to use a different device type you can get the string for it by doing the following:
>> cfg = coder.config('dll');
>> open cfg
Then click the "Hardware" button along the top of the "Project Settings" window, set Hardware Board to "None - Select device below", and set the device as desired.
Then enter:
>> cfg.HardwareImplementation.TargetHWDeviceType
And MATLAB will display the string you want.
Also, why do you think tmwtypes.h is under a specific license? Looking at the file I see there's a copyright but nothing indicating a specific license. It should be fine to package tmwtypes.h with your code.
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!