关闭

sipdroid在ubuntu下的编译

4736人阅读 评论(3) 收藏 举报
sipdroid是一款可开源的运行于Android平台上的voip,当前版本已经更新到2.5了,支持视频通话了。其实从changlog上来看,从1.5版本开始就已经可以进行视频通话了。sipdroid的源码和.apk可以到下面这个连接下载点击打开链接

       源码下载下来之后,用eclipse导入sipdroid之后,工程名字旁边赫然映入眼帘的一个红色的感叹号,看起来就很操蛋,看console窗口中的错误提示,原来工程缺少project.properties,也因此导致工程里的java文件一片红(都是错误)。二话不说从其它工程拷贝一个过来,根据实际情况修改下project.properties中的target变量的设置,这个是API版本号。然后刷新下工程,就OK啦,java文件也都木有错误了。

       下面开始用NDK编译jni目录下的文件了,我的系统是Ubuntu10.04,NDK版本是android-ndk-r7b。

       切换到工程的jni目录下执行:ndk-build(ndk-build的路径已经添加到系统路径了,如果没有添加,需要指定完整路径),直接报一下错误:

Android NDK: There is no Android.mk under /home/helei/workspace/raydroid/jni/jni    
Android NDK: If this is intentional  please define APP_BUILD_SCRIPT to point   
Android NDK: to a valid NDK build script.    
/home/helei/android_toolchain/android-ndk-r7b/build/core/add-application.mk:143: *** Android NDK: Aborting...    .  Stop.
解决办法:修改jni目录下的Application.mk文件中:APP_PROJECT_PATH := $(call my-dir)这一行,将其修改为:APP_PROJECT_PATH := $(call my-dir)/..  。

       再次执行:ndk-build,得,错误又来了,如下:

Android NDK: /home/helei/workspace/raydroid/jni/../jni/Android.mk:silkcommon: LOCAL_MODULE_FILENAME must not contain a file extension    
/home/helei/android_toolchain/android-ndk-r7b/build/core/build-static-library.mk:29: *** Android NDK: Aborting    .  Stop.
很明显在编译silkcommon这个静态库的时候出错了。

解决办法:打开jni目录下的Android.mk文件,在如下代码位置:

SILK     := silk
LOCAL_MODULE    := silkcommon
LOCAL_SRC_FILES :=  $(SILK)/src/SKP_Silk_A2NLSF.c \
	$(SILK)/src/SKP_Silk_CNG.c \
	$(SILK)/src/SKP_Silk_HP_variable_cutoff_FIX.c \
之前添加:include $(CLEAR_VARS), 修改之后为:
include $(CLEAR_VARS)
SILK     := silk
LOCAL_MODULE    := silkcommon
LOCAL_SRC_FILES :=  $(SILK)/src/SKP_Silk_A2NLSF.c \
	$(SILK)/src/SKP_Silk_CNG.c \
	$(SILK)/src/SKP_Silk_HP_variable_cutoff_FIX.c \
再次执行ndk-build,一切OK了。

    

      到此为止,全部编译完成



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:524817次
    • 积分:5334
    • 等级:
    • 排名:第5334名
    • 原创:95篇
    • 转载:8篇
    • 译文:5篇
    • 评论:125条
    最新评论