sqlite-jdbc: native lib doesn't work on `armv7l`

@mastervol reported this in https://github.com/gotson/komga/issues/945

Failed to load native library:sqlite-3.39.2.0-4862e885-20d4-47f7-a1f8-ed7c54fd2855-libsqlitejdbc.so. osinfo: Linux/armv7
java.lang.UnsatisfiedLinkError: /tmp/sqlite-3.39.2.0-4862e885-20d4-47f7-a1f8-ed7c54fd2855-libsqlitejdbc.so: /tmp/sqlite-3.39.2.0-4862e885-20d4-47f7-a1f8-ed7c54fd2855-libsqlitejdbc.so: failed to map segment from shared object

The device is a Synology DS216 Play.

uname -m
armv7l

cat /proc/cpuinfo

processor       : 0
model name      : ARMv7 Processor rev 0 (v7l)
BogoMIPS        : 2996.63
Features        : swp half thumb fastmult vfp edsp neon vfpv3 tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc09
CPU revision    : 0

processor       : 1
model name      : ARMv7 Processor rev 0 (v7l)
BogoMIPS        : 2989.26
Features        : swp half thumb fastmult vfp edsp neon vfpv3 tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc09
CPU revision    : 0

Hardware        : STi SoC with Flattened Device Tree
Revision        : 0000
Serial          : 0000000000000000

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 32

Most upvoted comments

the armv6 lib is actually for armv7l

Arm is backward compatible so the v6 library would work on v7

My feeling is that v7l doesn’t support all the features of the current v7 compiled lib.

One way to fix it would be to detect v7l and downgrade it to v6 in the loader, since we can’t figure out how to compile a v7 lib that works on that v7l.