mac 系统下android源码下载以及使用(总结)
曾经买了本android系统内核分析的书,看了一段看不懂,工作也忙,差不多两年过去了,感觉android水平需要提高一下,就装备把书看看,但是在网上找了一些文章,参考了官方的下载方式,最后都没有很好的解决问题把源码下载下来。最后经过不断的尝试折腾,终于可以把源码下载下来了。具体步骤如下
在开始以下步骤之前,首先系统是安装过eclipse+jdk环境的,是可以开发android应用程序的。
环境配置
1)Finder--》应用程序--》磁盘工具--》新建映像(注意格式为Mac OS 扩展(区分大小写,日志式),因为mac 系统出厂时默认格式的硬盘是不区分大小写的,而android的Framework是区分大小写的)。另外新建映像应该放到 ~/ 目录下,因为本人对Unix-like系统不太懂。但是经过测试验证也就是用户目录下。具体如下图:
创建后如下图:
2)挂载镜像磁盘
使用命令:
hdiutil attach ~/android.dmg -mountpoint /Volumes/android
Google官网推荐把这行加到~/.bash_profile里,定义成mountAndroid命令就行了
# mount the android file image function mountAndroid { hdiutil attach ~/android.dmg -mountpoint /Volumes/android; }
具体操作是在终端,使用vim 编辑.bash_profile。(vim的使用参考:http://blog.csdn.net/eric_xjj/article/details/8932502)
结果如下图:
3)安装MacPorts
安装MacPorts之前需要确认环境变量PATH中,/opt/local/bin出现在/usr/bin之前,可以运行一下这行来确认:
$ echo $PATH
否则,就运行:
$ export PATH=/opt/local/bin:$PATH
并把上面那行加在~/.bash_profile里。
4)从MacPorts安装make, git, and GPG packages:
$ POSIXLY_CORRECT=1 sudo port install gmake libsdl git-core gnupg
如果你是Mac OS X 10.4版本的话,还要安装个bison
$ POSIXLY_CORRECT=1 sudo port install bison
5)下面要把gmake 3.82还原到3.81,否则之后编译源码会出错:(3.82有Bug,用不了):
$ sudo vim /opt/local/etc/macports/sources.conf
然后在rsync那行的上面一行加上
file:///Users/Shared/dport
之后按这个步骤来就行了:
$ mkdir /Users/Shared/dports
$ cd /Users/Shared/dports/
$ svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
$ portindex /Users/Shared/dports
安装3.81版的:
$ sudo port install gmake @3.81
检查一下gmake版本,看到版本号是3.81就对了:
$ gmake --version
最后下载Android源码前的最后一步就是,修改文件标识符限制:
由于Mac OS 默认将同时打开的文件标识符数量限制得太小,并行编译处理时可能会超出这个限制。所以在 ~/.bash_profile 里加上这么一段:
# set the number of open files to be 1024
ulimit -S -n 1024
下载android源码:
安装Git Repo:
$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo(官方的下载方式回提示curl(56)的错误)所以应该使用下面的url:
curl "http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo" > ~/bin/repo
$ chmod a+x ~/bin/repo
初始化Git Repo进入开始时挂载的镜像硬盘,建立一个工作目录:
$cd /Volumes/android
$mkdir WorkingSpace/
$cd Working Space/
repo init -u git://codeaurora.org/platform/manifest.git -b gingerbread (备注因为买的数是基于gingerbread源码的,应该也是可以更改其他android分支,具体可参考:https://android.googlesource.com/platform/manifest)
repo sync
备注:repo sync过程中可能会有一些问题,多试几次就可以了。另外书上说android源码是2G左右,但是下载下来的是17.多G,很奇怪。
关联android中的项目
1)显示mac系统隐藏文件:
显示系统文件使用命令行:defaults write com.apple.finder AppleShowAllFiles -bool YES
图片都丢失了,由于长时间停留在一个页面,可能导致页面和csdn服务器失去连接,结果中间无法提交文章,全部复制了一下,然后刷新后粘贴发表文章,结果图片都丢了。CSDN自动保存功能貌似没有保存图片。真不靠谱呀。问题是图片本地没备份。就这样吧,人生不如意十有八九。
参考文章:http://source.android.com/source/building.html
http://php.webtutor.pl/en/2011/09/05/kernel-org-hacked-how-to-get-android-repo/
http://blog.csdn.net/ym19860303/article/details/7735010
mac 系统下android源码下载以及使用(总结)相关推荐
- WSL Ubuntu 20.04下Android源码下载
1. 开启WSL 右键开始菜单,打开任务管理器,选择性能选项卡,查看 CPU 虚拟化是否开启,如果没有开启,需要在 BIOS 中开启. 在 Windows 设置中搜索并打开"启用或关闭 Wi ...
- Windows下Android源码下载
前言 每一年这个看源码的花样都在变,我记得前两年我下源码的时候还没这么多事,现在看个源码还得整整python了. 本文基于文末的博客学习而来,环境win10,侧重点在于此过程中python爬的坑. 如 ...
- WSL Ubuntu 20.04下Android源码编译与导入Android Studio
源码下载见前文:WSL Ubuntu 20.04下Android源码下载 idegen 模块编译 在development/tools/idegen/README下可以看到关于 idegen 工具的相 ...
- 【Android】Android源码下载
学而不思则罔,思而不学则殆 [Android]Android源码下载 一.环境准备 虚拟机 Ubuntu系统 二.Android源码下载 Ubuntu下载 1.repo下载 2.修改源代码镜像地址 3 ...
- 《深入理解Android内核设计思想(第2版)(上下册)》之Android源码下载及编译
本文摘自人民邮电出版社异步社区<深入理解Android内核设计思想(第2版)(上下册)> 购书地址:http://item.jd.com/12212640.html 试读地址:http:/ ...
- 《深入理解Android内核设计思想(第2版)(上下册)》之Android源码下载及编译...
本文摘自人民邮电出版社异步社区<深入理解Android内核设计思想(第2版)(上下册)> 购书地址:item.jd.com/12212640.ht- 试读地址:www.epubit.com ...
- android源码下载方法 批量下载 基于windows os
安装win版的Gitbash, 在这里 http://msysgit.googlecode.com/files/Git-1.6.0.2-preview20080923.exe. 选择默认安装路径(否则 ...
- VLC for Android源码下载和编译
Project Hosting on 点击打开链接 最受欢迎的开源项目 点击打开链接 由Android的核心开发团队提供了15个优秀的示例项 目,包含了游戏.图像处理.时间显示.开始菜单快捷方式等. ...
- Android源码下载教程
文章目录 导语 国内源码资料 一.环境准备 1. Linux环境 2. JDK环境 3. 安装GIT工具 4. 安装依赖 二.安装Repo工具 三.初始化仓库 1. 创建文件夹 2. 初始化Repo ...
最新文章
- dokuwiki 部署笔记
- teamlab与redmine试用对比报告
- 嵌入式Linux系统编程学习之五gcc/g++编译器
- 一年之后 重温旧“梦”
- 模拟ARP报文发送,通过改变拓扑结构,观察报文发送方法以及途径
- 期末作业代码网页设计代码——花店购物网站源码(27页) 学生动花店购物页设计模板下载 植物大学生HTML网页制作作品 简单网页设计成品 dreamweaver学生网站模板
- SI24R1切换收发模式问题调试与解决
- latex ctex 中文目录在pdf阅读器的“书签”选项卡中显示乱码的解决方法
- 菜鸟教程python3 mysql_MySQL菜鸟教程
- 鸿蒙系统用的什么代码,鸿蒙系统是用什么语言开发的?
- JS实现合并单元格的两种方法
- OrCAD学习笔记1
- 中国医用显示器械市场现状调查与投资前景预测报告2022-2028年
- Spark的spark-*和blockmgr-*目录里是什东西,怎么来的
- 深入理解HTML表格秘籍
- 修改服务器3389 端口号,修改服务器3389端口为其它端口
- 考试用计算机反思800字,考试后的反思
- C++协程(二):Understanding operator co_await
- PTA:7-10 深入虎穴 (25 分)
- 【论文分享】基于微信小程序的快递取寄系统设计与实现