CyanogenMod android netcat binary 编译过程以及二进制文件下载
2015-11-03 20:50
1136 查看
背景
最近需要在安卓手机上执行一个能转发udp的功能,手机是魅蓝note2,于是我决定用nc,结果发现rom并没有自带,于是手机root,并安装了busybox工具箱,结果发现它是阉割版的,并没有办法发送udp或者tcp。在网上找了半天,没有找到合适的工具。决定自己编译一个。万能的github 上发现CyanogenMod的netcat实现,下载下来,开始编译。编译过程
推荐使用linux版的NDK,我用的r10e版本,下载下来就能开始编译。刚开始编译的时候,输入 ./ndk-build NDK_PROJECT_PATH=/home/ic2y/code/github/android_external_netcat提示找不到Android.mk文件,研究发现,下载下来的代码并不能直接用,需要都放在jni文件夹里,这样,ndk就能正确找到源码了。
创建了jni文件夹,开始编译,又发生了fatal error: arpa/telnet.h: No such file or directory 错误,经过研究,发现需要在jni下创建Application.mk文件,并且需要修改原来的Android.mk的文件才能适应新版本的NDK。
修改如下(Application.mk):
APP_ABI := armeabi APP_STL := stlport_static APP_PLATFORM := android-21
修改如下(Android.mk):
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := netcat LOCAL_SRC_FILES:=\ netcat.c \ atomicio.c include $(BUILD_EXECUTABLE)
最后编译成功的二进制文件,netcat百度盘
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories