02-03-2010 10:39 AM
Hello,
I have Linux 2009 LV running on 64 bit linux machine(SuSe 11.1). I am trying to import a shared object, but I am not able to. I get Error 7 each time I try.
"
Error 7: Call Library Function Node in libtest.lvlib:sub.vi
"
I am creating a shared object for a simple Subtraction (a-b = c). The library that I am importing is a 32-bit library. I am creating one by using the -m32 option, so it should be compatible with the 32 bit LV.
I am attaching here the files that I am using, including the makefile and the .cpp and the .h file required to create the shared object, present in filesReqToImportShObj.tgz
I am also including the Project file, and the Report generated.
Please advise what can be done. I am facing this problem since long.
-H
02-03-2010 01:34 PM
Thank you.
I got it working. All I had to do was to add to my .h file:
#ifdef __cplusplus
extern "C" {
#endif
//function defination
#ifdef __cplusplus
}
#endif
-H
08-13-2010 05:17 AM
soory i did nt understand.. i too have the same problem..want to call a .so file in 32 bit labview linux version,but the shared lib or .so or .o file is in 64 bit version.so is it possible to call?
08-13-2010 06:43 AM
No it isn't directly! What you would need to do is to write a 64 bit application in C that calls that shared library and offers an IPC (Interprocess Communication) interface such as shared memory or unix pipes or network sockets to communicate with your 32 bit LabVIEW program.
08-13-2010 11:27 AM
rolfk is right. This was also discussed in this thread.
04-14-2019 09:48 AM
Hi
m getting that error 7, how did you add that h.file?
04-14-2019 09:53 AM
Hi
M getting error 7, is see you said you added h.file. how do you add it?