Library woes - symbol lookup error

I am developing a Desktop application for the Raspberry PI. It uses an external library that interfaces a usb device through FTDI. The library has been compiled for different architectures, including armhf.

The application works well, when I try to run it on my mac, the problem arises when I transfer the binary to the raspberry pi and try to run it from there. It gives me a

./testpi: symbol lookup error: /home/pi/Desktop/libuFCoder-armhf.so: undefined symbol: strcpy_s

Some things I have tried:

  • Running ldd on the .so library mentioned and the executable to see if there’s any missing libraries - there are none.
  • Tried setting LD_LIBRARY_PATH to /usr/local/lib (by default its nothing), then running ldconfig - no luck
  • Rebooting many times
  • Changing the permissions on the .so file to 755

I’m really stuck, I’ve hit this roadblock for a couple of days now, and see no light. Any help would be appreciated.

I managed to solve the issue, and it wasn’t Xojo related. But if anyone stumbles upon this post, here is what was wrong and how I solved it.

To solve the problem I used an older version of the external library, and I didn’t receive the issue anymore. I think that the new library must have been compiled with some flags missing or wrong architecture and wasn’t properly tested.

There’s three days of my life.