博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
移植udt到android
阅读量:5036 次
发布时间:2019-06-12

本文共 1491 字,大约阅读时间需要 4 分钟。

首先要装好并配置好NDK,下载UDT源码。下面从创建jni目录开始

1 创建jni目录,可以是任意的xxxxxx/jni

2 把udt源码移动或拷贝到jni目录下
../udt-test/jni/UDT4
3 创建Android.mk
 在udt的src目录下添加Android.mk文件,其内容如下:

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)APP_STL := gnustl_staticLOCAL_CFLAGS := -DLINUX -fvisibility=hiddenLOCAL_ARM_MODE := armLOCAL_CPPFLAGS := -fPIC -Wall -Wextra -DLINUX -finline-functions -O3 -fno-strict-aliasing -fvisibility=hiddenLOCAL_LDLIBS :=-L$(SYSROOT)/usr/lib -llogLOCAL_C_INCLUDES := /usr/include/c++/4.5/LOCAL_CPP_EXTENSION:=.cppLOCAL_MODULE := udtLOCAL_SRC_FILES := md5.cpp common.cpp window.cpp list.cpp buffer.cpp packet.cpp channel.cpp queue.cpp ccc.cpp cache.cpp core.cpp epoll.cpp api.cppinclude $(BUILD_SHARED_LIBRARY)

设置工程目录

export NDK_PROJECT_PATH=~/Desktop/wshare/udt-test
之后输入ndk-build进行编译会出现如下错误
Android NDK: Your APP_BUILD_SCRIPT points to an unknown file:
因为还有Android.mk未创建

 分别在jni目录和udt目录下创建Android.mk,文件内容均为

include $(all-subdir-makefiles)

ndk-build进行编译会出现如下错误

error: fstream: No such file or directory
error: set: No such file or directory
error: string: No such file or directory
error: vector: No such file or directory

因为还有一步

在jni目录下创建Application.mk,其内容如下

APP_STL := gnustl_static

OK,小功告成。编译完成后会在jni目录下生成两个目录,libs,obj。可以在其中找到生成的动态库libudt.so

我想要的是静态库libudt.a,怎么办呢?
很简单,把上面Android.mk中的这一行include $(BUILD_SHARED_LIBRARY)
换成include $(BUILD_STATIC_LIBRARY)
然后输入ndk-build,没什么反应。嗯……
还得在上面提到的Application.mk文件中添加如下内容

APP_MODULES := libudt

 

转载于:https://www.cnblogs.com/uvsjoh/archive/2013/03/28/2987302.html

你可能感兴趣的文章
网络编程学习小结
查看>>
JS面向对象
查看>>
excel VLOOKUP函数的用法
查看>>
设计模式
查看>>
orm介绍
查看>>
一个简单程序快速入门JDBC
查看>>
DBA_Oracle基本体系内存和进程结构(概念)
查看>>
unisynedit 在Delphi 2010下的编译问题
查看>>
每日定理3
查看>>
在公司就职时应该注意的事项
查看>>
springMVC整合jedis+redis
查看>>
Python基础之 一 文件操作
查看>>
java学习之switch 等值判断
查看>>
hdu5036 Explosion 传递闭包
查看>>
WinXP下由于图标造成的System.Windows.Markup.XamlParseException
查看>>
解决错误提示unable to invoke code completion due to errors in source cord.
查看>>
比较smart的一条分页存储过程
查看>>
POJ1979-Red and Black
查看>>
leetcode 数据库题解
查看>>
文件打开对话框
查看>>