java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app-lib/com.cmstop.jnitest-2/libFaceDetectorJni.so" has no loadable segments,实在是找不出原因呢,求解决
java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app-lib/com.cmstop.jnitest-2/libFaceDetectorJni.so" has no loadable segments,实在是找不出原因呢,求解决
bool ElfReader::ReserveAddressSpace() { Elf32_Addr min_vaddr; //获取program header table中所有LOAD属性的segment的大小范围 load_size_ = phdr_table_get_load_size(phdr_table_, phdr_num_, &min_vaddr); if (load_size_ == 0) { DL_ERR(“\”%s\” has no loadable segments”, name_); return false; }
...然后就是phdr_table_get_load_size方法,遍历phdr表,获取最小虚拟地址和最大虚拟地址,相差就是加载大小。
所以问题是出在libFaceDetectorJni.so上面,这个so在内存中需要的空间大小为0,至于为什么为0,就要看你生成这个so的方式了把