Android平台下Live555移植
来源:互联网 发布:折800是淘宝官方活动吗 编辑:程序博客网 时间:2024/06/05 00:49
下载最新Live555,解压后,新建一个config.android文件。
CROSS_COMPILE?= arm-linux-androideabi-
COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -I$(ANDROID_NDK)/platforms/android-9/arch-arm/usr/include -DLOCALE_NOT_USED -DANDROID
运行:./genMakefiles android
make
出现错误
arm-linux-androideabi-g++ -otestMP3Streamer testMP3Streamer.o ../liveMedia/libliveMedia.a ../groupsock/libgroupsock.a ../BasicUsageEnvironment/libBasicUsageEnvironment.a ../UsageEnvironment/libUsageEnvironment.a
/home/lonsn/work/android/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtbegin_dynamic.o: No such file or directory
是因为在link的参数里没有把sysroot变量加上,找不到android的一些库
在testProgs/Makefile.tail里加上参数
CONSOLE_LINK_OPTS += --sysroot=$(ANDROID_NDK)/platforms/android-9/arch-arm
重新编译,出现错误:
rm-linux-androideabi-g++ -otestMP3Streamer --sysroot=/home/lonsn/work/android/android-ndk-r9/platforms/android-9/arch-arm testMP3Streamer.o ../liveMedia/libliveMedia.a ../groupsock/libgroupsock.a ../BasicUsageEnvironment/libBasicUsageEnvironment.a ../UsageEnvironment/libUsageEnvironment.a
/home/lonsn/work/android/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: testMP3Streamer.o: in function main:testMP3Streamer.cpp(.text.startup+0x11c): error: undefined reference to '__cxa_end_cleanup'
是因为android默认自带的库不支持STL,需要重新编个新的工具链来支持。
运行 $ANDROID_NDK/build/tools/make-standalone-toolchain.sh --platform=android-9 --install-dir=/tmp/my-android-toolchain
会在/tmp/my-android-toolchain目录下生成新的工具链,使用该工具链,修改config.android文件
NDK_TOOLCHAIN = /tmp/my-android-toolchain
CROSS_COMPILE?= $(NDK_TOOLCHAIN)/bin/arm-linux-androideabi-
COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -I$(NDK_TOOLCHAIN)/arm-linux-androideabi/include/c++/4.6 -I$(NDK_TOOLCHAIN)/arm-linux-androideabi/include/c++/4.6/arm-linux-androideabi -DLOCALE_NOT_USED -DANDROID
修改testProgs/Makefile.tail
CONSOLE_LINK_OPTS += --sysroot=/tmp/my-android-toolchain/sysroot
重新编译,顺利通过
- Android平台下Live555移植
- live555 android移植
- 移植live555到android下遇到的问题
- live555 rtsp server android 移植
- 移植live555到android上
- live555移植到Android过程.
- 基于移动平台的多媒体框架——移植Live555到Android上
- cocos2d-x移植到android平台下
- Ubuntu下移植Tcpdump到Android平台
- cocos2dx android平台下 sqlite3 移植方案
- vlc-android 移植live555到android
- vlc-android 移植live555到android
- vlc-android 移植live555到android
- vlc-android 移植live555到android
- vlc-android 移植live555到android
- vlc-android 移植live555到android
- live555 移植
- live555 移植
- CSS3 pointer-events:none应用举例及扩展2
- 如何让jiffies 占用 jiffies_64 的低32位
- Spring 的事务管理学习笔记
- clj的treap
- 真正有本事的人不是控制阶段能力强,而是让风险根本不会发生
- Android平台下Live555移植
- LBS与GPS
- BZOJ 1786 配对Pair
- HDU1599:find the mincost route(Floyd)
- vs2012的一个bug
- LOCAL_SHARED_LIBRARIES 与 LOCAL_LDLIBS,LOCAL_LDFLAGS的区别
- CvvImage在高级别的Opencv2.4.7下的配置以及错误解决办法。
- Ubuntu 13.04 安装 VMware Tools,解决无法找到kernel header path的问题
- rpm 命令|rpm 安装|rpm 卸载|rpm 使用|rpm 删除