FreeBSD Linux Compat GLIBCXX & GLIBC API Versions

The FreeBSD Linux compatibility layer linux_base-c7 comes from CentOS 7.

When trying to run a Linux application, you might run into the following error:

$ ./linuxexecutable
loolwsd: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by loolwsd)
loolwsd: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by loolwsd)
loolwsd: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by loolwsd)

There is an easy way to find out the API versions available on your system:

$ cd /compat/linux/usr/lib64 
$ strings libstdc++.so.6 | grep LIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBC_2.3
GLIBC_2.2.5
GLIBC_2.14
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_DEBUG_MESSAGE_LENGTH

You see GLIBCXX_3.4.19 is the latest API version available on this system.