[Development] Android missing SONAME in lib's causes

Thiago Macieira thiago.macieira at intel.com
Tue Aug 13 17:32:03 CEST 2013


On terça-feira, 13 de agosto de 2013 13:39:57, Stephen Kelly wrote:
>  Set the SONAME to the library name without the major
>  version number appended, as android does not have the versioned
>  symlinks.

By the way, please note that "Android does not have the versioned symlinks" is 
a false statement.

Libraries built by other buildsystems (such as autotools) will have those 
symlinks. There was a user a couple of days ago asking about packaging such a 
lib in their .apk via the tools we provide in Qt. He couldn't, because the 
tool was packaging the .so file, replacing the symlink with the target's 
contents, but the application's ELF headers still contained a DT_NEEDED to the 
full soname, libfoo.so.X.

My suggestion is that you drop all of the Android-specific code here. Simply 
assume Android is exactly like a regular Linux desktop. You package the exact 
file that the DT_NEEDED header requested. You can find that out via ldd, readelf 
-d, eu-readelf -d, objdump -p.

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.qt-project.org/pipermail/development/attachments/20130813/46d3e850/attachment.sig>


More information about the Development mailing list