I have a .dll library (c++) and I need to Import it to Matlab (I have no header file for it)

11 views (last 30 days)
loadlibrary() doesn't work with me because i have no Header file

Accepted Answer

Walter Roberson
Walter Roberson on 24 Apr 2017
You will need to write a header file for it listing all the interface routines you wish to be able to call.
Note: it will only be possible to call functions which were created with
extern "C"
in the C++ source.
  6 Comments
Walter Roberson
Walter Roberson on 24 Apr 2017
Looking at the code, it appears to me that it is not designed to be called from C, but
"The loadlibrary function only supports calling functions that are callable from C and header files that can be parsed by a C compiler. Functions written in C++ must be declared as extern "C"."
To call it from MATLAB, you would have to create some interface code that was C compatible.
Omar Abdelkader
Omar Abdelkader on 25 Apr 2017
yes I'm trying to use mdf4reader, I tried to add extern "C" to the 'CMdf4Reader.h' code, I get a warning that there were no functions found!

Sign in to comment.

More Answers (0)

Categories

Find more on C Shared Library Integration in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!