使用 kivy 编译 apk 调用了 cython 编译的 so,运行后闪退,查看日志:
stderr: importerror: dlopen failed: empty/missing DT_HASH in "core.so" (built with — hash-style=gnu?)
查阅资料后,主要在编译的时候增加参数:-Wl,–hash-style=sysv
具体是在 setup.py 中增加编译参数
link_args=[‘-Wl,–hash-style=sysv’]
setup(cmdclass = {‘build_ext’: build_ext},
ext_modules= [ Extension("core", ["core.py"],
extra_compile_args=compile_args,
extra_link_args=link_args) ])
参考资料:https://stackoverflow.com/questions/28638809/android-ndk-unsatisfiedlinkerror-dlopen-failed-empty-missing-dt-hash