Search code examples
javajavacpp

How can I specify a shared object version in javacpp link?


I have a library file like libfoo.so.1.55.0 and would like to include it in the generated platform jar using javacpp-presset. What is the correct way to add the library to the link or linkResources fields in the @Platform annotation?

I've tried foo, [email protected] which doesn't work. Notably, removing the version from the shared object file altogether (libfoo.so) does indeed work as expected.


Solution

  • The version we need to specify here isn't related to the filename, but the SONAME. Check its value with readelf -d.