I thought I might have the wrong version of the library, or perhaps a damaged file, so I tried to reinstall it. To my surprise, apt-file search libarmmem returned nothing.
Please try the following on a machine with it installed:
openhd@openhd-airpi:~$ dpkg -S libarmmem
raspi-copies-and-fills: /usr/lib/arm-linux-gnueabihf/libarmmem-v6l.so
raspi-copies-and-fills: /usr/lib/arm-linux-gnueabihf/libarmmem-aarch64.so
raspi-copies-and-fills: /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so
raspi-copies-and-fills: /usr/lib/arm-linux-gnueabihf/libarmmem-v8l.so
openhd@openhd-airpi:~$
what functionality does it bring to the table
It provides things like memcpy and memset tuned for the Arm cores used in Raspberry Pis. Personally, I feel like this was more important with older Pis and maybe a little less so today. From the 2012 version: "Speeds of up to 1390 MB/s have been achieved. This is ~7x faster than the libc version."
Does anybody know where this library come from,
It used to be on github, but I cannot find it anymore.
how to reinstall it if need be?
You can remove or install this package: https://archive.raspberrypi.org/debian/pool/main/r/raspi-copies-and-fills/
I recently got a problem involving /usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so: VLC was crashing when calling this library (which overrides memory related functions from libc6), and removing the reference to this library from /etc/ld.so.preload fixed the problem.
There was a bug a couple years ago, it was fixed. Do you still have the crash on newer versions?
snapd
- based purely on searching forlibarmmem-${PLATFORM}.so
on the interwebs