Skip to content

Libraries missing DT_SONAME #188

Closed
Closed
@pfn

Description

@pfn

Lack of DT_SONAME on native libraries leads to an annoying error popup on Android N-preview,

please add -Wl,-soname,libXXXXX.so to the linker flags for at least the libraries below, thanks!

 W  (28643) linker  : /data/app/com.hanhuy.android.vision-1/lib/arm/libjniopencv_core.so: is missing DT_SONAME will use basename as a replacement: "libjniopencv_core.so"
 W  (28643) linker  : /data/app/com.hanhuy.android.vision-1/lib/arm/libjniopencv_imgproc.so: is missing DT_SONAME will use basename as a replacement: "libjniopencv_imgproc.so"
 W  (28643) linker  : /data/app/com.hanhuy.android.vision-1/lib/arm/libjniopencv_imgcodecs.so: is missing DT_SONAME will use basename as a replacement: "libjniopencv_imgcodecs.so"
 W  (28643) linker  : /data/app/com.hanhuy.android.vision-1/lib/arm/libjniopencv_videoio.so: is missing DT_SONAME will use basename as a replacement: "libjniopencv_videoio.so"
 W  (28643) linker  : /data/app/com.hanhuy.android.vision-1/lib/arm/libjniopencv_highgui.so: is missing DT_SONAME will use basename as a replacement: "libjniopencv_highgui.so"
 W  (28643) linker  : /data/app/com.hanhuy.android.vision-1/lib/arm/libjniopencv_ml.so: is missing DT_SONAME will use basename as a replacement: "libjniopencv_ml.so"
 W  (28643) linker  : /data/app/com.hanhuy.android.vision-1/lib/arm/libjniopencv_objdetect.so: is missing DT_SONAME will use basename as a replacement: "libjniopencv_objdetect.so"

Activity

saudet

saudet commented on Apr 2, 2016

@saudet
Member

Sure, but do you know why we need to specify the soname manually?

pfn

pfn commented on Apr 2, 2016

@pfn
Author

I don't know why it's being flagged now, but soname is typically used for
library versioning. I don't know why the makefiles for these aren't already
setting them. It should be an automatic part of any library build...

saudet

saudet commented on Apr 2, 2016

@saudet
Member

JavaCPP is its own little build system, and there's no versioning for DLLs on Windows, so it just doesn't do any of that for portability reasons.

It's kind of strange that Android now requires something used for versioning, while it doesn't even support versioning itself. Oh well, whatever.

saudet

saudet commented on May 19, 2016

@saudet
Member

Fix included in version 1.2. Thanks for reporting!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @pfn@saudet

        Issue actions

          Libraries missing DT_SONAME · Issue #188 · bytedeco/javacpp-presets