为什么80%的码农都做不了架构师?>>>   

昨天,把电脑主机全换了,因此之前的工作环境得重新搭建,我是既开心又纠结,开心的是可以用高配置的电脑,纠结的是搭环境比较麻烦,稍有不慎,就会导致源代码编译不过,前功尽弃。为了减少工作量,以及避免不必要掉麻烦。我都是尽量保持与之前电脑相同的软件以及配置方式,终于今天全编译代码通过了,总共花了40多分钟,比之前电脑的3个多小时缩短了很多宝贵时间,总之就是一个字:爽,两个字:超爽。

下图是新电脑的配置,其实要是加个SSD,估计编译速度又得提高一个档次。

OK,进入正题,本人安装的是64位的ubuntu 11.04,这是为了与之前老电脑一致(之前是32位的),谷歌也建议我们编译4.0以上代码使用11.04,其实个人觉得,12.04应该也是没什么很大的问题的,而且11.04已经没有官方源了,我是为了省事,才继续使用11.04。

1.首先是gcc和g++版本:

输入命令:

gcc -v

对应版本:... ...gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)

g++ -v

对应版本:... ...gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)

2.Java版本:

javac -version

我这里是:javac 1.6.0_37

安装:32位jdk下载

64位jdk下载

下载好Jdk后执行下面的操作:

sudo mv jdk-6u37-linux-i586.bin /usr/bin
 sudo chmod +x /usr/bin/jdk-6u37-linux-i586.bin
 sudo ./usr/bin/jdk-6u37-linux-i586.bin
 cd
 vim .profile
增加下面两行到文件后面:

export JAVAHOME=/usr/bin/jdk1.6.0_37/
export PATH=$JAVAHOME/bin:$PATH

存盘重启工具就生效了

如果安装64位的操作系统,安装新版本java的时候可能会报错,先尝试下面的命令看能否解决(我没 遇到)

sudo apt-get install g++-multilib
 sudo apt-get install gcc-multilib

如果编译报错androideabi/bin/as: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

sudo apt-get install lib32z1
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev valgrind zlib1g-d
sudo apt-get install vim subversion
sudo apt-get install openssh-server
sudo apt-get install libarchive-zip-perl

参考 http://source.android.com/source/initializing.html

3.ndk配置:

我下载了最新的ndk-r9,从官网下载后,解压到任意位置,我这里是:
/home/topwise/way/adt-bundle-linux-x86_64-20130917/android-ndk-r9

然后配置环境变量:
sudo vim /etc/environment
我的电脑显示:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/topwise/way/adt-bundle-linux-x86_64-20130917/android-ndk-r9"
最后那个路径就是我们指定的ndk路径。保存,然后注销或重启一下电脑,打开终端输入ndk-build即可。

4.adb配置:

我没有单独下载adb工具,因为我们在谷歌官网下载eclipse时,里面自带了。比如我下载的是:adt-bundle-linux-x86_64-20130917

adb工具就在adt-bundle-linux-x86_64-20130917/sdk/platform-tools目录下面,

我们可以cd到此目录下,然后执行:

chmod 777 adb

sudo cp adb /usr/bin

即可。

千万不要以为就此结束了,我们此时连接一台手机输入adb shell,会发现连接不上,因为我们还少了两步:

修改文件(可能不同的电脑文件名不同,但是.rules后缀是一样的):
sudo vim /etc/udev/rules.d/70-persistent-net.rules

在末尾加上一句:
SUBSYSTEM=="usb",ATTRS{idVendor}=="1782",ATTRS{idProduct}=="5d04",MODE="0666"

注意:idVendor对应下面ID后4位,idProduct对于冒号后面4位数字(通过lsusb命令可以查看如下类似的)
Bus 002 Device 014: ID 1782:4d00 Spreadtrum Communications Inc

最后,我们需要指定手机端口号:

vim ~/.android/adb_usb.ini

如果没有此文件,新建一个就是,在文件末尾加上0x1782,也是对于上面ID后4位数字,记得加上0x,因为是16进制的。

OK,简单记一下笔记,以备将来之需。

转载于:https://my.oschina.net/cjkall/blog/195800

Android之ubuntu源码开发环境搭建笔记相关推荐

  1. 【Android】MTK Android 源码开发环境搭建

    硬件环境: VMware 虚拟机环境:VMware 虚拟机版本 VMware-workstation-9.0.0-812388 内存:2.1G 处理器:双核双线程 硬盘:60G 系统环境:Ubuntu ...

  2. 开源arduino可视化编辑器Ardublockly源码开发环境搭建

    linux环境下开源arduino可视化编辑器Ardublockly二次开发搭建 1 安装 1.1 系统环境搭建 在Ubuntu上安装Python 2的Tkinter: sudo apt-get in ...

  3. 从零开始搭建Ubuntu 环境下的Android 源码开发环境

    本文从一个干净的Ubuntu 10.04 操作系统出发,一步一步引导你搭建自己的基于eclipse IDE 的Android源码开发环境. 正文会包含一下这些内容: 获得源码 编译源码准备工作 编译工 ...

  4. Android源码编译环境搭建教程 (一) - Ubuntu系统构建

    Android源码编译环境搭建教程 (一) - Ubuntu系统构建 本教程为感兴趣的同学提供Android源码编译的环境搭建,当然这里都是基于windows系统,mac系统也差不多,将相应的软件替换 ...

  5. Ubuntu12.10-amd64系统上搭建Android4.2(JellyBean)源码开发环境

    注意:1) 从android4.1开始,编译Android源码必须使用ubuntu 64位系统,所以请预装Ubuntu64位操作系统! 建议去ubuntu官网下载 ubuntu-desktop-### ...

  6. Gitolite + repo 搭建安卓源码开发环境

    Gitolite + repo 搭建安卓源码开发环境 转载请注明出处:http://blog.csdn.net/u011479494/article/details/50629669 相比gitosi ...

  7. Android视频直播源码开发直播平台、点播播放器哪家强?

    Android视频直播源码开发直播平台.点播播放器哪家强? 最近在项目中要加入视频直播和点播功能,那么问题来了,我需要一个播放器来播放视频流,那该如何选择呢?除了原生的VideoView(VideoV ...

  8. ardupilot java_基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建

    基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建 作者:Awesome 日期:2017-10-21 需准备的软件工具 Ardupilot飞控源码 PX4 toolchain JAVA ...

  9. cl.zk0.info/index.php,兄弟连区块链入门到精通教程btcpool矿池源码分析环境搭建

    原标题:兄弟连区块链入门到精通教程btcpool矿池源码分析环境搭建 btcpool矿池-测试环境搭建及使用cgminer测试 本文档基于Ubuntu 16.04 LTS, 64 Bits. 安装Bi ...

最新文章

  1. Python函数中的参数(一)
  2. pytorch中Schedule与warmup_steps的用法
  3. Web前端好不好学?Web前端要学些什么呢?
  4. C语言函数调用的原理
  5. 爬虫怎么处理python_python 爬虫怎么处理json内容
  6. java 7 泛型_Java(7)泛型
  7. 填充图案的边界线 插件_cad如何给填充图案添加边界线
  8. 铁通玩跑跑卡丁车经常出现服务器无响应之解决办法
  9. python 基于金字塔的图像融合
  10. CH341应用升级为CH347软硬件注意事项
  11. crossover程序错误_如何使用Crossover在Linux上安装Windows应用程序
  12. 目前流行的操作系统有哪些
  13. 大牛教你这样阅读android源码
  14. python里面while true是什么意思_Python里while True是什么意思?
  15. ByteBuffer Converting CharBuffer
  16. 使用PS(Adobe Photoshop CC)设计Banner
  17. Java-坦克大战2
  18. android手机功能创新,Android手机QQ浏览器1.1发布多项创新功能
  19. mysql的load data_【MySQL】load data语句详解(一)
  20. 如何启发孩子的数学思维?你想要的答案或许在这!

热门文章

  1. Top 7大开源数据可视化分析工具!
  2. Spring IoC是什么
  3. WordPress更新文章实时推送到百度
  4. Linux Ubuntu 添加创建新用户步骤 安装 go
  5. jam 掘金study_有谁知道12月19号奇才对掘金(cctv5直播)赛后放的那首英文歌叫什么名字?多好听的。...
  6. Android-动态修改APP桌面图标
  7. AUTOCAD——图层线型
  8. JVM常见命令之jstack
  9. iOS7设置状态栏颜色
  10. 在ArcGIS上使用python(arcpy包)的入门教程