Ubuntu16.04配置Android5.0编译环境
2017-08-12 17:47
435 查看
1、安装jdk7
Ubuntu16.04的安装源已经默认没有openjdk7了,所以要自己手动添加仓库,如下:
$ sudo add-apt-repository ppa:openjdk-r/ppa
$ sudo apt-get update
安装openjdk-7-jdk
$ sudo apt-get install openjdk-7-jdk openjdk-7-jre
如果安装成功之后还是不能用可能有多个版本,执行如下命令选择正确的版本:
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
查看Java版本信息:
$ java -version
2、安装编译所需的依赖
以下提到的编译需要依赖的程序,请务必确认每个都安装成功:
sudo apt-get update
sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386
sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib
sudo apt-get install tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo apt-get install dpkg-dev libsdl1.2-dev libesd0-dev
sudo apt-get install git-core gnupg flex bison gperf build-essential
sudo apt-get install zip curl zlib1g-dev gcc-multilib g++-multilib
sudo apt-get install libc6-dev-i386
sudo apt-get install lib32ncurses5-dev x11proto-core-dev libx11-dev
sudo apt-get install lib32z-dev ccache
sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip m4
如果安装过程中出现错误,务必逐个搜索解决方案,可能某些程序的版本有变动:
例如 :lib32z-dev 有可能需要安装:lib32z-dev:i386
编译过程中出现如下错误:
libnativehelper/JniInvocation.cpp:40: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:45: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
clang: error: linker command failed with exit code 1 (use -v to see invocation)
host C++: libc++ <= external/libcxx/src/algorithm.cpp
host C++: libc++ <= external/libcxx/src/bind.cpp
build/core/host_shared_library_internal.mk:44: recipe for target 'out/host/linux-x86/obj32/lib/libnativehelper.so' failed
make: *** [out/host/linux-x86/obj32/lib/libnativehelper.so] Error 1
解决方法:
source_android代表你的android源码根目录
setp1:
vim <source_android>/art/build/Android.common_build.mk //修改第119行
修改前:
# Host.
ART_HOST_CLANG := false
ifneq ($(WITHOUT_HOST_CLANG),true)
# By default, host builds use clang for better warnings.
ART_HOST_CLANG := true
endif
修改后:
# Host.
ART_HOST_CLANG := false
ifneq ($(WITHOUT_HOST_CLANG),false)
# By default, host builds use clang for better warnings.
ART_HOST_CLANG := true
endif
setp2:
cp /usr/bin/ld.gold <source_android>/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/x86_64-linux/bin/ld
Ubuntu16.04的安装源已经默认没有openjdk7了,所以要自己手动添加仓库,如下:
$ sudo add-apt-repository ppa:openjdk-r/ppa
$ sudo apt-get update
安装openjdk-7-jdk
$ sudo apt-get install openjdk-7-jdk openjdk-7-jre
如果安装成功之后还是不能用可能有多个版本,执行如下命令选择正确的版本:
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
查看Java版本信息:
$ java -version
2、安装编译所需的依赖
以下提到的编译需要依赖的程序,请务必确认每个都安装成功:
sudo apt-get update
sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386
sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib
sudo apt-get install tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo apt-get install dpkg-dev libsdl1.2-dev libesd0-dev
sudo apt-get install git-core gnupg flex bison gperf build-essential
sudo apt-get install zip curl zlib1g-dev gcc-multilib g++-multilib
sudo apt-get install libc6-dev-i386
sudo apt-get install lib32ncurses5-dev x11proto-core-dev libx11-dev
sudo apt-get install lib32z-dev ccache
sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip m4
如果安装过程中出现错误,务必逐个搜索解决方案,可能某些程序的版本有变动:
例如 :lib32z-dev 有可能需要安装:lib32z-dev:i386
编译过程中出现如下错误:
libnativehelper/JniInvocation.cpp:40: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:45: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
libnativehelper/JniInvocation.cpp:165: error: unsupported reloc 43
clang: error: linker command failed with exit code 1 (use -v to see invocation)
host C++: libc++ <= external/libcxx/src/algorithm.cpp
host C++: libc++ <= external/libcxx/src/bind.cpp
build/core/host_shared_library_internal.mk:44: recipe for target 'out/host/linux-x86/obj32/lib/libnativehelper.so' failed
make: *** [out/host/linux-x86/obj32/lib/libnativehelper.so] Error 1
解决方法:
source_android代表你的android源码根目录
setp1:
vim <source_android>/art/build/Android.common_build.mk //修改第119行
修改前:
# Host.
ART_HOST_CLANG := false
ifneq ($(WITHOUT_HOST_CLANG),true)
# By default, host builds use clang for better warnings.
ART_HOST_CLANG := true
endif
修改后:
# Host.
ART_HOST_CLANG := false
ifneq ($(WITHOUT_HOST_CLANG),false)
# By default, host builds use clang for better warnings.
ART_HOST_CLANG := true
endif
setp2:
cp /usr/bin/ld.gold <source_android>/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/x86_64-linux/bin/ld
相关文章推荐
- Ubuntu16.04系统中BusyBox在配置arm交叉编译环境时make失败
- ubuntu16.04编译android5.1环境配置
- ubuntu16.04 配置CM13编译环境的几个操作
- ubuntu16.04编译android5.1环境配置
- Ubuntu 16.04配置Android源码编译环境
- Ubuntu16.04配置Android N编译环境
- Ubuntu16.04 配置sublime text 3的c编译环境
- 在Ubuntu16.04上配置.Net Core 2 环境
- ubuntu16.04 配置Java环境
- ubuntu 16.04 xampp环境配置虚拟主机
- ubuntu 编译android2.2源码配置环境及jdk5(4)
- ubuntu16.04 ROS环境下配置和运行SVO
- 深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070
- Ubuntu 16.04的caffe环境配置:cuda 8.0+cudnn 8.0+opencv3.1.0 + python2.7 + matlab2016b + blas(OpenBlas)
- Ubuntu 16.04 配置ROS Kinetic的Eclipse开发环境
- 深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0
- ubuntu 下编译环境的配置(java, c++)
- TensorFlow的安装以及环境配置(ubuntu16.04+1070+Anaconda)
- RTEMS 最新基于ubuntu和RSB编译环境的安装配置