LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Linux shared lib (external code) : used to work under LV 8.6 - fails under LV 2009/2010

Well... after spending hours searching for information about my problem, I finally decided to post my "message in a bottle"...

 

I have a linux shared library that used to work like a charm under LabVIEW 8.6 but refuses to run properly under 2009/2010. LabVIEW gurus (authors?), here are my questions : 

 

1 - What is the official gcc version for LabVIEW 2010? I mean, which gcc version is binary compatible with LabVIEW 2010? Which gcc version did you use to compile LabVIEW for Linux?

 

2 - Do you confirm that the NumericArrayResize signature changed ? I talking about the semantic of the last function parameter : totalNewSize. Under LV 8.6 it used to be documented as : "New number of elements to which the handle should refer". Today, its documentation is : "New number of elements, in bytes, to which the handle should refer". My code worked perfectly, but I now systematically obtain error code "1" when trying to resize an array using NumericArrayResize. 

 

I'm lost ! Your help is warmly welcome. Thanks !

 

N.L.

 

 

 

0 Kudos
Message 1 of 4
(2,531 Views)

Some additional info...

 

Compiling the project using gcc-4.2.4 fixes the shared library loading problem I had (File Not found... Might have been moved... blablabla...). However, ResizeNumericArray still fails with error... 5! Error "5" is documented as "file already open"! 

0 Kudos
Message 2 of 4
(2,520 Views)

Removing "liblv.so" from the linker options list (i.e. no more -llv) fixes the problem!

Could someone explain me why?  

I'm really upset. Lost hours for nothing!

0 Kudos
Message 3 of 4
(2,517 Views)

BTW, the LV 2009 & 2010 documentation of NumericArrayResize is wrong! The totalNewSize parameter is still expressed in number of elements, not in bytes.

0 Kudos
Message 4 of 4
(2,510 Views)