LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to call functions in a .a static library file? (Unix)

The External Code manual indicates that you can call functions in .so (shared library) files under Unix. Can we also call functions in .a files?
I've tried this under Linux, and I always seem to get a "function not found in library" error.
0 Kudos
Message 1 of 2
(3,106 Views)
Rich_123 wrote:

> The External Code manual indicates that you can call functions in .so
> (shared library) files under Unix. Can we also call functions in .a
> files?
> I've tried this under Linux, and I always seem to get a "function not
> found in library" error.

No you can't do that. Static library files are sometimes in a format
depending on the compiler used to create them and there is no
standardized way of linking to symbols in such a library. More
problematic there is no mechanisme to load and initialize the library in
a standardized way. So LabVIEW does not even try to do such things and
with a good reason.

What you could do is create a wrapper shared library which links to your
static library and makes its functions available in such a way.

R
olf Kalbermatter
Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
Message 2 of 2
(3,106 Views)