espresso3389 / pdfrx

pdfrx is yet another PDF viewer implementation that built on the top of pdfium. The plugin currently supports Android, iOS, Windows, macOS, Linux, and Web.
MIT License
60 stars 36 forks source link

Failed to load dynamic library 'libpdfium.so' #145

Closed reddeath1 closed 1 week ago

reddeath1 commented 3 weeks ago

Invalid argument(s): Failed to load dynamic library 'libpdfium.so': dlopen failed: cannot locate symbol "strtof_l" referenced by "/data/app/com.mcl.egazeti-2/split_config.armeabi_v7a.apk!/lib/armeabi-v7a/libpdfium.so"...

0 _open (dart:ffi-patch/ffi_dynamic_library_patch.dart:11)

1 new DynamicLibrary.open (dart:ffi-patch/ffi_dynamic_library_patch.dart:22)

2 pdfium (package:pdfrx/src

Samsung J7 prime

espresso3389 commented 3 weeks ago

According to the google's document, strtof_l is introduced on API level 26 (Oreo).

So Samsung J7 Prime is lower than it?

reddeath1 commented 3 weeks ago

Thank you. Can you advise the solution for these devices.

espresso3389 commented 3 weeks ago

Wow, recently bblanchon/pdfium-binaries@1685e0504710948663838e997a14e4a924bb9616 add default_min_sdk_version = 21. So if we switch to 125.0.6406.0, it may resolve the compatibility with the older Android devices.

espresso3389 commented 3 weeks ago

1.0.60 updates pdfium to bblanchon/pdfium-binaries 125.0.6406.0 (chromium/6406) that sets default_min_sdk_version=21 to support lower API level devices.

reddeath1 commented 3 weeks ago

Thank you, I m upgrading to it now.

espresso3389 commented 2 weeks ago

@reddeath1 So is the build working for the device? If so, please close the issue.

reddeath1 commented 2 weeks ago

Thanks I've tested it on API 24, this is what I got but the pdf opened.

/data/app/com.m/lib/arm64/libpdfium.so: unused DT entry: type 0x70000001 arg 0x0

reddeath1 commented 1 week ago

The update works, thanks.