以下仅作为公司项目下载过程记录,仅供参考。针对个人对AOSP源码下载过程,建议查看 https://source.android.google.cn/source/downloading?
Gerrit环境搭建
1.生成SSH Key以及设置git用户名邮箱
$git config --global user.name "test"
$git config --global user.email "test@chinatsp.com"
$git config --global user.group media/system/bsp/hmi 是哪个组就配置哪个组,比如是HMI组,就设置hmi
可以通过git config --list 查看是否设置正确
- 查看配置成功
$ssh -p 29418 test@10.100.193.154 - 成功则显示
**** Welcome to Gerrit Code Review ****
Hi Jenkins, you have successfully connected over SSH.
Unfortunately, interactive shells are disabled.
To clone a hosted Git repository, use:
git clone ssh://test@10.100.193.154:29418/REPOSITORY_NAME.git
- 如果不成功,报错incorrect signature
1.在git的安装目录下找到\etc\ssh\ssh_config文件添加一行:HostKeyAlgorithms ssh-rsa 2.删除.ssh\known_hosts这个hosts文件
2.下载仓库
- 安装repo
从\10.100.193.29\Public\2_Software\1_repo目录下拷贝repo文件到服务器 增加权限 chmod a+x repo 注: 安装repo可以参考安装 Repo - 安装Android编译环境
1、安装JDK,分别执行以下命令
$ sudo apt-get update
$ sudo apt-get install openjdk-8-jdk
2、切换java版本
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
3、安装相关的依赖包
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib
sudo apt-get install libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip
repo init -P [项目]
repo sync -c --no-tags -j2
sudo apt-get install lib32stdc++6
sudo apt-get install bison
sudo apt-get install m4
sudo apt-get install libxml2-utils
sudo apt-get install gawk wget git-core diffstat unzip texinfo build-essential chrpath libsdl1.2-dev xterm subversion cvs dos2unix lzop gcc-multilib g++-multilib libglib2.0-dev ia32-libs lib32gcc1 libc6-i386 lib32z1 lib32stdc++6 lib32ncurses5 lib32gomp1 lib32z1-dev lib32bz2-dev
sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig
sudo apt-get install xutils-dev libtool texinfo chrpath libsdl1.2-dev automake flex libssl-dev texinfo chrpath python-dev
sudo apt install curl
编译Android
使用cd 命令,切换目录,最终切换到代码的\项目\lagvm\lagvm\LINUX\android 使用 envsetup.sh 脚本初始化环境:
source build/envsetup.sh
执行完了之后在执行 lunch
然后让你输入 ,你就输入35—具体看lunch后的分支情况 然后在执行 make update-api -j2 && make -j2 执行上面那个 没有问题,也执行完成了就执行
mmm development/tools/idegen/ && ./development/tools/idegen/idegen.sh
其中mmm development/tools/idegen/执行完成后会生成idegen.jar,而sodo ./development/tools/idegen/idegen.sh则会在源码目录下生成IEDA工程配置文件:android.ipr,android.iml及android.iws.
简单的说明一下这三个文件的作用:
- **android.ipr:**通常是保存工程相关的设置,比如编译器配置,入口,相关的libraries等
- **android.iml:**则是主要是描述了modules,比如modules的路径,依赖关系等.
- **android.iws:**则主要是包含了一些个人工作区的设置.
看到以下类似信息则说明成功:
make completed successfully (7 seconds)
Read excludes: 21ms
Traversed tree: 194799ms
到目前为止,我们就完成了源码准备工作.
导入源代码
编译成功后,现在我们就可以将源码导入Android Studio了.但是在导入之前,我们先修改一下Android studio的配置:32位系统下修改idea.vmoptions,64位下修改idea64.vmotions 调整其中的-Xms和-Xmx参数值,官方要求至少在748m以上,根据实际情况进行配置即可. 然后进入android-studio目录下的bin文件夹,执行如下命令启动Android Studio ./studio.sh
导入源码
File->New->Import project->进入对应的目录-->点击配置文件 android.ipr即可
?
|