您的位置:首页 > 移动开发 > Android开发

xbmc-android的编译

2015-11-16 12:12 555 查看
一、环境ubuntu 15.10,安装必要的软件包:

$ sudo apt-get install build-essential git curl autoconf unzip zip zlib1g-dev gawk gperf cmake


二、配置android环境:

配置完java环境之后,建议安装default-jdk

export java-home=/<java-path>/jdk
export classpath=.:$java-home/lib:$java-home/jre/lib
export path=$path:$java-home/bin:$java-home/jre/bin


再安装最新的android-ndk,目前最新版为r10e,

配置ndk路径

export android-ndk=/<ndk-path>/android-ndk-r10d


最后配置android-sdk路径

export android-sdk=/<sdk-path>/android-sdk-linux


三、编译独立的toolchain

编译arm平台的:

$ cd <android-ndk>
$ ls platforms
$ cd build/tools
$ ./make-standalone-toolchain.sh --ndk-dir=../../ \
--install-dir=<android-toolchain-arm>/android-17 --platform=android-17 \
--toolchain=arm-linux-androideabi-4.8


编译x86平台的:

$ cd <android-ndk>
$ ls platforms
$ cd build/tools
$ ./make-standalone-toolchain.sh --ndk-dir=../../ \
--install-dir=<android-toolchain-x86>/android-17 --platform=android-17 \
--toolchain=x86-4.8 --arch=x86 --system=linux-x86_64


四、生成签名

$ keytool -genkey -keystore ~/.android/debug.keystore -v -alias \
androiddebugkey -dname "CN=Android Debug,O=Android,C=US" -keypass \
android -storepass android -keyalg RSA -keysize 2048 -validity 10000


五、下载源码

$ cd $HOME
$ git clone git://github.com/xbmc/xbmc.git kodi-android
$ cd kodi-android
$ git submodule update --init addons/skin.re-touched


六、编译依赖库

$ cd $HOME/kodi-android/tools/depends
$ git clean -xdf
$ ./bootstrap
$ ./configure --with-toolchain=/<toolchain-path>/android-toolchain/ android-17 --host=arm-linux-androideabi --with-sdk-path=/<sdk-path>/sdk --with-ndk=/<ndk-path>/android-ndk-r10e  --with-tarballs=/<set-tarballs-path>/xbmc-tarballs --prefix=/<set-deps-path>/xbmc-deps
$make -j1


xbmc-tarballs目录下会下载很多编译所需的包,xbmc下是编译完成的依赖库,

这个地方很容易出错,第一次编译一般用make -j1,可以逐一排除错误,如果出错的话在目录下执行git clean重新开始编译

七、编译xbmc生成apk

$ cd $HOME/kodi-android
$ make -C tools/depends/target/xbmc
$ make
$ make apk


make apk这一步很容易出错,检查发现jdk的版本必须是1.6和1.7,如果是目前这新版本的jdk1.8的话,生成apk的时候会一直出现异常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: