1,下載安裝vmware
2,下載ubuntu1604鏡像文件
3,安裝ubuntu1604
——會出現分辨率問題,導致安裝界面顯示不全,這時按下alt鍵,拖動鼠標可以移動界面。
4 ,更換軟件源爲阿里雲
爲了更快的安裝軟件,使用Ubuntu官方指定的國內軟件源阿里雲
4.1備份sources.list
cp /etc/apt/sources.list /etc/apt/sources.list.ubuntun
4.2刪除sources.list, 新建sources.list, 並粘貼阿里源配置
rm /etc/apt/sources.list
vim /etc/apt/sources.list
-------------------------------------------------
如果是圖形界面,可以直接用gedit /etc/apt/sources.list編輯
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
5, 安裝依賴
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
6,安裝open-jdk-7
由於Ubuntu 16.04沒有OpenJDK7的源,因此在16.04上安裝OpenJDK7需要執行下面的命令:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-7-jdk
配置OpenJDK.打開/etc/profile文件:
sudo gedit /etc/profile
末尾追加下面代碼:
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
修改了/etc/profile文件需要重啓才能生效,但使用下面命令可以在不重啓的情況下在當前bash環境生效:
source /etc/profile
檢查OpenJDK配置是否正確:
java -version
7,安裝repo, 配置git, 拉取Android源碼
git config --global user.name "用戶名"
git config --global user.email "用戶郵箱"
注意git config命令的–global參數,用了這個參數,表示你這臺機器上所有的Git倉庫都會使用這個配置,當然也可以
對某個倉庫指定不同的用戶名和Email地址。
配置好之後,查看配置命令:
git config -l
8,編譯Android源碼,處理報錯問題。
——8.1,ubuntu1604編譯android6.0要修改clang配置。
(art/build/Android.common_build.mk )
——8.2,內存不足問題。
參考https://www.cnblogs.com/wanyuanchun/p/5126099.html
給ubuntu1604新增swap大小後,編譯通過。
——8.3,交叉編譯報錯(make -j4)
scripts/Makefile.build:455: recipe for target 'drivers/comip' failed
--------------------------------
ubuntu1604 自帶make版本過高(make4.1)
參考https://www.jianshu.com/p/e42746bd0bac
安裝低版本make3.8.1
參考https://blog.csdn.net/sjzzdf123/article/details/79863548
----------------------------------
不用交叉編譯(不用參數-j), 直接用make不會報錯,但編譯速度慢。
9, 安裝ssh
10,安裝samba, 配置共享文件。
================================================================
ubuntu1604編譯android6.0art\build\Android.common_build.mk中的配置。
# Clang build support.
# Host.
ART_HOST_CLANG := false
ifneq ($(WITHOUT_HOST_CLANG),true)
# By default, host builds use clang for better warnings.
### ##修改開始## ###
HOST_OS_TYPE = Ubuntu-16.04
ifneq ($(findstring $(HOST_OS_TYPE),$(HOST_OS_EXTRA)),)
ART_HOST_CLANG := false
$(shell echo > $(OUT_DIR)/MakeMonitor.log)
$(shell echo 1.HOST OS is Ubuntu-16.04 ART_HOST_CLANG set to
$(ART_HOST_CLANG) >> $(OUT_DIR)/MakeMonitor.log)
else
HOST_OS_TYPE = Ubuntu-14.04
ifneq ($(findstring $(HOST_OS_TYPE),$(HOST_OS_EXTRA)),)
ART_HOST_CLANG := true
$(shell echo > $(OUT_DIR)/MakeMonitor.log)
$(shell echo 2.HOST OS is Ubuntu-14.04 ART_HOST_CLANG set to
$(ART_HOST_CLANG) >> $(OUT_DIR)/MakeMonitor.log)
endif
endif
### ##修改開結束## ###
#ART_HOST_CLANG := true
endif
------------------------------------------------------------------------------------------------------------
--------
沒有增加ubuntu1604判斷的配置如下:
# Clang build support.
# Host.
ART_HOST_CLANG := false
ifneq ($(WITHOUT_HOST_CLANG),true)
# By default, host builds use clang for better warnings.
ART_HOST_CLANG := true
endif
================================================================
###清華源, 參考 https://www.cnblogs.com/mmdln/p/9071699.html.
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse