07-18-2018 09:04 AM
I built a shared library on Eclipse for my project. It works on a cRIO running LabVIEW 2017 32 bit. However, when I push it to the production board, a Linux machine running Redhat 7.5 64 bit and LabVIEW 2017 32 bit, it will not load.
When browsing to the .so file in the "Call Library Function block" LabVIEW gives the following error:
"The library selected is not valid for the current platform. For example, you are running 32-bit LabVIEW and the library might be a 64-bit library."
I've tried this library both on LabVIEW 2018 64-bit and LabVIEW 2017 32-bit and I receive the same error.
What can I do to fix this?
Thanks.
08-23-2018 02:59 AM
Is your cRIO by any chance a 906x or one of the other ARM based cRIO systems? A shared library for a Linux on ARM system of course can't be loaded onto a Linux for x86/x64 system. They are almost as alien to each other as a Windows DLL to a Linux system.
You need to recompile your shared library for Linux x86/x64 with an appropriate C toolchain.