Bruno Haible <br...@clisp.org> writes: > Hi Po Lu, > >> Emacs shared libraries fail to link at runtime when compiled with >> __ANDROID_API__ == 35 and the NDK r28a: > > OK, that is a supported configuration. > >> E AndroidRuntime: FATAL EXCEPTION: main >> E AndroidRuntime: Process: org.gnu.emacs, PID: 21651 >> E AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: >> cannot locate symbol "set_tz" referenced by >> "/data/app/~~yw5LUubWzSHUwprjT3OZ5w==/org.gnu.emacs-0EFFUQxDS3mpZzvhMyF-4g==/lib/arm64/libemacs.so"... >> E AndroidRuntime: at java.lang.Runtime.loadLibrary0(Runtime.java:1081) >> >> because the strftime module assumes that localtime_rz replacements are >> enabled and set_tz is defined if neither of strftime_lz and strftime_z >> are available, but the presence of localtime_rz/mktime_z in the C >> library does not indicate the former. > > This is a little too terse for me to understand. Can you please give > the following details: > - Is HAVE_NATIVE_TIME_Z defined in config.h ? > - Is NEED_TIMEZONE_NULL_SUPPORT defined in config.h ? > - Is time_rz.c among the source code, after the gnulib import? > - Is time_rz.o among the compiled files?
Sure. Yes to all of the above. > - What symbols are shown as defined ('T') in "nm time_rz.o"? 0000000000000000 T rpl_localtime_rz 0000000000000014 T rpl_mktime_z