Accessing C API (no class from C++ library) from Command line or script
Show older comments
I have a C++ built library in ubuntu which exposes C APIs. Associated header-file defines the APIs without use of 'extern C'. The header file also includes other headerfiles from other packages (Eigen).
- seems cannot use loadlibrary. I tried library-name headerfile-name,i get:
> loadlibrary libfile.so file.h
Failed to preprocess the input file.
Output from preprocessor is:file.h:5:9: warning: #pragma once in main file
#pragma once
^~~~
file.h:7:10: fatal error: Eigen/Core: No such file or directory
#include <Eigen/Core>
^~~~~~~~~~~~
compilation terminated.
- do i need to use other mechanism? (fairly new to matlab)
4 Comments
James Tursa
on 4 Apr 2020
Edited: James Tursa
on 4 Apr 2020
Can you write your own C header file that includes only the function prototypes you want to use? If the original C++ header file does not have extern "C", how do you know they are not decorated names in the object file?
James Tursa
on 4 Apr 2020
You haven't answered my question. If the original C++ header files did not have extern "C" in them, why do you think they are not decorated names in the object library file?
Answers (0)
Categories
Find more on Deploy to C++ Applications Using mwArray API (C++03) 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!