我一直在尝试为Android编译libpcap,我没有看到任何模式或任何值得写下的进展.
我有一个非常简单的嗅探器(在MIPS linux中运行良好),它使用libpcap,所以我心里想,哦,好吧……没什么大不了…我只是为Android编译libpcap(最后,Android是只是一个Linux)…而这里是问题的起点.我不知道如何使用ndk-build和Android.mk以及所有基础设施来编译libpcap.
我在目录中有Android NDK. NDK有内置的工具链(我在〜/ Documents / Projects / Android_NDK / toolchains /下有很多目录)但是没有一个工具链可以使用libpcap.
我试过两个不同的libpcap版本或…分支:
Android的一个,我想要使用的,
https://android.googlesource.com/platform/external/libpcap/
和常规的:
http://www.tcpdump.org/release/libpcap-1.5.3.tar.gz
我所做的所有尝试都是非常不成功的.我已经看到了类似的问题Android NDK: Link using a pre-compiled static library,但我仍然遇到各种错误.
我已将这些pcap库下载到他们自己的目录中.也许是这个问题?我是否需要将Android libpcap放在NDK根目录下的某个目录中并重新创建工具链?
我在MacOSX 10.9.2 64位上使用NDK-r9.
解决方法:
最后!!
在被非现有的标题和类似的东西感到厌烦之后,我找到了this question,它指向了一个SVN repo(http://sourceforge.net/p/prueba-android/code/HEAD/tree/trunk/jni/),其中包含一个编译的libpcap!
如果其他人想要了解我的Android.mk和目录结构的其他详细信息,请添加评论,我会扩展此答案.