Using c-files in Matlab

I would like to use a c-program in Matlab. It consists of several c-files. I have read several approaches, and also most of the examples I see is to write the c-code in a mex wrapper and compile it. What I want is to include these c-files in the mex file, and compile and link it. I also read about compiling them separately with a c-compiler and load the library. Does anyone have a clear set of instructions or directions on what would be the best way to go about this? Thanks a lot!

 Accepted Answer

Philip Borghesani
Philip Borghesani on 30 Jun 2015

0 votes

If these c files are already a library of functions and you wish to use more then one of them from MATLAB then make a shared library (dll) and use loadlibrary.
If these c files should be turned into a single function to be called by MATLAB or still need some work to combine together into something useable then I recommend creating a mex file.

3 Comments

Jason
Jason on 30 Jun 2015
Hi Philip, thank you for your help. I would prefer to include all the headers in the mex file and just compile the mex file. Would that work? How do I go about compiling this mex file with all these separate .c files? Is there an example somewhere? I am sorry, I don't really have programming background.
There are examples in the documentation for mex on building a mex file from multiple c files. How you should do it in your case is beyond the scope of an answers question. You will probably need to learn some programming elsewhere or get help from someone familiar with c.
Thanks a lot for your pointers!

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB Compiler in Help Center and File Exchange

Asked:

on 30 Jun 2015

Commented:

on 1 Jul 2015

Community Treasure Hunt

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

Start Hunting!