Android Question Checked SqlCipher version 4.10.0 for 16kb

Alex_197

Well-Known Member
Licensed User
Longtime User
Hi all.

I just tried to check the SqlCipher version 4.10.0 https://www.b4x.com/android/forum/threads/sqlcipher-version-4-10-0.168668/ for 16kb compatibility with the new script https://www.b4x.com/android/forum/threads/android-16kb-page-size-compatibility-checker.168942/

Here is a result

B4X:
Found llvm-readobj: D:\16kb\android-ndk-r27d\toolchains\llvm\prebuilt\windows-x86_64\bin\llvm-readobj.exe
Analyzing: D:\16kb\SQlCipher.apk

Extracting archive...
Found 1 .so file(s) in arm64-v8a folder

Checking: libsqlcipher.so
  WARNING: No .note.gnu.property section found (may indicate old NDK)
  FAIL - See details below:
    - p_vaddr (0x4F4BC0) not aligned to p_align (16384)
    - p_offset (0x4ECBC0) not aligned to p_align (16384)


= * 80
FINAL RESULT
= * 80
FAILED: 1 non-compliant file(s):
  - libsqlcipher.so

Required fixes:
1. Update to NDK 27+ which has proper 16KB alignment support
2. Add -Wl,-z,max-page-size=16384 to your linker flags
3. Recompile all native libraries
4. Contact third-party library vendors for 16KB-compatible versions

For gradle builds, add to build.gradle:
android.defaultConfig.ndk.abiFilters 'arm64-v8a'
android.defaultConfig.externalNativeBuild.cmake.arguments '-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON'
PS D:\16kb>

This script https://www.b4x.com/android/forum/threads/script-to-check-compatibility-16kb.168429/ shows that everything is Ok

 
Top