该笔记经过本人实验证明过,基本可以当做参照作用。解决办法都非原创,所以请勿转载,谢谢!
环境工具下载路径:
1. eclipse: http://www.eclipse.org/downloads/ (这次用的是indigo的Eclipse Classic 3.7.2)
2. jdk1.6: http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u31-download-1501634.html
3. andrdoi sdk: http://developer.android.com/sdk/index.html
环境配置过程:
1. 安装JDK 将JDK的安装包压缩到任意路径,然后配置环境变量: ~/.bashrc文件
加上: JAVA_HOME=/usr/jdk1.6.0_45 (/usr/jdk1.6.0_45为jdk解压的路径)
export PATH=$JAVA_HOME/bin:$PATH
保存退出之后输入 source ~/.bashrc 命令
修改Ubuntu默认jdk:
A、将我们安装的jdk加入java选单:
sudo update-alternatives --install /usr/bin/java java/usr/jdk1.6.0_45/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac/usr/jdk1.6.0_45/bin/javac 300
B、重新选择系统默认的jdk
update-alternatives --config java
输入对应的JDK序号更改。
C、执行java -version,确认默认JDK是sun的java。
2. 安装androidSDK
解压后放置某个目录下
加入环境变量:
编辑 ~/.bashrc,加入export PATH=/usr/local/android-sdk-linux/tools:/usr/local/android-sdk-linux/platform-tools:$PATH
保存退出(/opt/android_sdk是SDK实际放置路径,根据自己安装位置而调整)。
输入命令source ~/.bashrc,重新加载环境变量。
3. 安装eclipse
解压到任意目录如/usr
遇到eclipse没有识别到jdk,说java虚拟机不存在的问题,根据网上高人提示:
进入eclipse新建jre文件夹链接到jdk;具体指令为:sudo mkdir jre-->> cd jre-->> sudo ln -s /jdk目录/bin bin
4. 安装adt
这里两种方法:
一种是下载ADT Archive,另外一种是在线安装。先介绍下载Archive的方法:
在Eclipse中,”help” – “Install New Software” – “Add” – “Archive” 选择下载的ADT Archive包即可。
另外一种方法是在线安装,也就是在”Add” 的时候输入网址,而不是选择Archive,插件的网址:
https://dl-ssl.google.com/android/eclipse/,
如果这个链接不行,就换http的,而不要用https的,
即http://dl-ssl.google.com/android/eclipse/。
上面两种操作之后,回到 Available Software 窗口,就可以看到 Developer Tools,勾选这个就会同时勾选它的子节点
Android DDMSAndroidDevelopment Tools,然后下一步安装即可,完成之后重启Eclipse。这里说明一下:这个Android
DDMS是用来调试Android程序的。用它可以连接到Android模拟器上,它与Eclipse集成非常好,可以直接在Eclipse中调
试 Android应用。
在Ubuntu上Eclipse3.7 安装ADT问题:
Cannot complete the install because one or more required items could not be found....
解决:安装所缺少的插件,在eclipse的 help-->Install New Softwares-->Add 添加Location:
http://download.eclipse.org/releases/indigo(注意eclipse的版本名,3.7叫indigo,3.6叫helios,3.5叫galileo,
这个对所下插件的版本有影响),然后找到一个叫WST Server Adapters的插件安装好,最后再安装Android ADT。
Android SDK Manager无法打开问题:
提示:
/opt/android-sdk-linux/tools/android: 84: java: not found
/opt/android-sdk-linux/tools/android: 101: java: not found
解决(来自stackoverflow,验证OK):
On Ubuntu I had to go into the /sdk/tools/android and change the java_cmd variable to equal my
JAVA_HOME path - then it worked.即将java_cmd设为绝对路径
基于Android内核的MTK环境搭建(Ubuntu)
1. 安装基本库:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev
ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos
python-markdown \ libxml2-utils xsltproc
2. 安装JDK(1.6)
3. 安装ARM编译库
Arm编译库已经在6573的android代码中,具体位置在如下路径: prebuilt/linux-x86/toolchain/arm-eabi-4.4.3
把arm-eabi-4.4.3复制到/opt/下
4. 配置环境变量
gedit ~/.bashrc #’~/’表示当前用户的根目录,具体路径为 /home/当前用户名/
在.bashrc中添加
# android profile
JAVA_HOME=/opt/jdk1.6.0_30
export PATH=$JAVA_HOME/bin:$PATH
ANDROID_JAVA_HOME=/opt/jdk1.6.0_30
export PATH=$ANDROID_JAVA_HOME/bin:$PATH
PATH=/opt/arm-eabi-4.4.3/bin:/opt/jdk1.6.0_30/bin:$PATH
export PATH
5. 安装mingw
/ect/apt/source.list add: deb http://ubuntu.mirror.cambrium.nl/ubuntu/ lucid main universe
sudo apt-get update
sudo apt-get install mingw-w64
or: 在Ubuntu软件中心搜mingw,选择”GNU Compiler Collection”安装。
--fix-missing
6. 关于gcc unkown错误问题
Mtk在检测gcc的时候会存在不兼容的情况,导致无法检测到gcc,出现gcc unkown错误。gcc nv检测的时候
做了以下操作(具体代码位置参见:mediatek/build/tools/checkEnv.py 函数GccCheck。):
首先在脚本中执行了gcc --v 命令,然后在返回的信息中通过匹配”.*gcc\s*version\s*”格式查找gcc的版本。由于
我们当前的版本是4.6.1 不支持gcc --v, 仅支持gcc -v,而中文语言环境下返回的版本信息中”version”用了中文字
符”版本”,会导致匹配不成功。因此需要做以下修改:
a.降低gcc版本
ubuntu 11.10的gcc版本是4.6.1,把gcc版本改为4.4.3。
ubuntu 32bit系统下安装gcc 4.4:
sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4
装完后在/usr/bin目录下 $ ls -l gcc*
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
发现gcc 链接到gcc-4.6, 需要将它改为链接到gcc-4.4 :
sudo mv gcc gcc.bak
sudo ln -s gcc-4.4 gcc
同理
ls -l g++*
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
需要将g++链接改为g++-4.4:
sudo mv g++ g++.bak
sudo ln -s g++-4.4 g++
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6 ,说明gcc 4.4安装成功。
dependncy 错误:
Please check all dependency error First !! at ./mk line 639. 注意文件夹的权限
MTK模拟器编译:
1. 可以使用编译命令build出一个zip文件,命令为./makeMtk banyan_addon
2. 编译好后,会生成一个zip文件,位置是在out/host/linux-x86/add_on下
3. 将此zip文件解压到从Google官网下载SDK目录下的add-ons下,目录结构为
android-sdk-windows\add-ons\banyan_addon_ALPS.GB.FDD.MP.V1_eng,(最后一个名字编译出来的可能不一样)
4. 进入android-sdk-windows\add-ons\banyan_addon_ALPS.GB.FDD.MP.V1_eng\tools目录下,将其中的emulator.exe或者
emulator如果使用Linux的SDK的话)复制出来,覆盖android-sdk-windows\tools下的相应emulator.exe
5. 然后就可以新建模拟器了,在选择中,可以看到MediaTek标志的API 10的选项了
mtk 编譯指令
全部编译: ./makeMtk -t zhephone73_gb n 在根目录下
单个编译: ./makeMtk -t mm 模块的路径
举例: ./makeMtk -t mm package/apps/Launcher2/ (只要有Android.mk文件的地方都可以编译)