I have built OpenSSL for Android. This has generated a so with an extension in the format .so.1.0.0, and a symlink with the extension.so. This of course is a problem for Android, as it expects all shared libraries to have an extension in the format .so.

(Additionally, I have some other prebuilt libraries that require on a file with the name libssl.so.)

Therefore I need a library to end with .so, and all libraries that depend on it to link to a file with the extension .so. The OpenSSL instructions here: <http://wiki.openssl.org/index.php/Android> suggest renaming the file to libssl.so. Which I have done.

However, the library still has the soname "libssl.so.1.0.0" When I try and build my own libraries (which also need openSSL) using the ajb-tools (<https://subversion.assembla.com/svn/ajb-tools/trunk/android/android-cross/android-cross>), using `-lopenssl` it generates shared objects which apparently require the library file in the format libssl.so.1.0.0, a file that didn't exist anymore at build time. At runtime, the Android app complains it can't find this file.

I have tried putting `-l:libssl.so` in the makefile of my library, to no avail. `readelf -d` still reports my libraries need libssl.so.1.0.0.

Is there any way to force a library to link to a specific file name. Or do I have to build OpenSSL in such a way that it generates a library that has its soname set to ".so"?