Using Coder's generated C files in Visual Studio ?
2 views (last 30 days)
Show older comments
[EDIT: 20110608 10:34 CDT - reformat - WDR]
Hello Folks,
I have successfully changed my .m files to .c files using Matlab Coder. May you guide me on how to use these files in Visual Studio ?
my function name is faceImage.c
In my Visual Studio .cpp file, I included:
#include "faceImage.h"
#include "faceImage_initialize.h"
#include "faceImage_terminate.h"
But when i compile the file i get:
error LNK2019: unresolved external symbol "void __cdecl faceImage_initialize(void)" (?faceImage_initialize@@YAXXZ) referenced in function _wmain
Can you please give me an example or any reference that may aid me to solve such problem.
Loads of thanks
0 Comments
Accepted Answer
John Elliott
on 8 Jun 2011
Assuming you're just generating the C++ code (and not creating a library), don't forget to add faceImage_initialize.cpp and faceImage_terminate.cpp to you VS project. Adding something to the linker's path won't do the job.
If you're creating a library using MATLAB Coder, then you need to add the library to the linker's input files in your VS project.
0 Comments
More Answers (1)
Kaustubha Govind
on 8 Jun 2011
Have you included faceImage.c in your Visual Studio project?
Note that if you are calling C functions from C++ files, you need to include the extern "C" directive: How do I call a C function from C++?
You might need to add this to the generated header files for all functions that you intend to call from a .cpp file.
2 Comments
Chirag Gupta
on 8 Jun 2011
As Kaustubha pointed it out, just add "C" in all the header files:
Instead of extern void face_initiallize(...), just make it
extern "C" void face_initialize(...)
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!