2017-04-05 55 views
1

我有一个关于.so文件生成在pjsip fororid.I我试图为不同的arch生成.so文件像86,armeabi,arm64-V8A,armeabi-V7A等Pjsip android .so文件生成不同的拱,如x86,armeabi,arm64-v8a,armeabi-v7a

我下面的波纹管连接 https://trac.pjsip.org/repos/wiki/Getting-Started/Android

我总是最后产生的。所以只对armeabi仅拱沉绵我提到TARGET_ABI =在上面的链接中说明了x86。

这些是我用来为.so文件x86 arch生成的执行命令。

出口ANDROID_NDK_ROOT = /家庭/哈利/ AndroidSDK/NDK束

NDK_TOOLCHAIN_VERSION = 4.9 TARGET_ABI = 86 ./configure-android --use- NDK-CFLAGS

化妆DEP & &使清洁& & make

然后移到swig运行“make”命令。

你能告诉我如何解决这个问题。

感谢您的支持。

+0

你能完成x86编译吗? 我在最后收到了错误消息“asm-generic/posix_types.h:没有这样的文件或目录”。 –

回答

0

你很好。您必须手动将文件夹的名称更改为您编译的拱形文件。检查入门指南这样的文字:

运行make从目录$ PJDIR/PJSIP-应用/ src目录/痛饮(请注意,在Android NDK根应该在PATH),例如:

$ cd /path/to/your/pjsip/dir 
$ cd pjsip-apps/src/swig 
$ make 

这一步应该产生:

  • 本地库libpjsua2.so在PJSIP-应用/ src目录/痛饮/ JAVA /安卓/应用/ src目录/主/ jniLibs/armeabi
    • :如果您正在构建其他目标ABI,则需要手动将libpjsua2.so移动到相应的目标ABI目录,例如:jniLibs/armeabi-v7a,请检查目标ABI目录名称的here

所以,如果你想为X86,armeabi,arm64-V8A和armeabi-V7A的.so文件,你必须编译PJSIP每次4次所需的拱门,以及更改名称生成的armeabi文件夹的名称为您想要的拱门的名称。例如:对于armeabi-v7a,将armeabi文件夹名称更改为“armeabi-v7a”。

希望这可以帮助你。