1. VMware
我这边安装的是version:7.1.4
2. ubuntu
我这边安装的是ubuntu10.10 64位的版本
注:mtk平台要求ubuntu版本为64的,建议使用10.10这个版本的64位。
安装注意创建虚拟机时不挂载镜像,虚拟机创建好之后再挂载镜像。
Ubuntu分区: (1) boot 4096M primary etc
(2) / 30000M etc
(3) Home 最大 logical etc
(4) 10000M swat
完成安装重启 会有无法重启BUG 直接关闭虚拟机重新打开。
============================================================================
补充一点:
vm要装ubuntu64位这就要求你电脑的cpu支持64位虚拟化;
所以请先查你的cpu是否支持vt技术;然后在bios中设置vt为enable;
品牌不同vt的设置不同;具体请google下怎么打开你电脑的64位虚拟化技术;
============================================================================
3 进入ubuntu 个人账号 修改 ROOT 账号密码:sudo passwd root 修改密码
4重启虚拟机进入ROOT权限
5替换 etc/apt目录下的sources.list (新的sources.list文件随文档打包)然后更新软件库:apt-get update
6安装如下包,最好一个一个得安装;
sudo apt-get install git-core gnupgflex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs\
x11proto-core-dev libx11-devlib32readline5-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32tofrodos python-markdown \
libxml2-utils xsltproc gcc-multilib g++-multilib
安装包尽量单个安装保证所有包安装完成每个包由空格隔开
7配置gcc path:
使用命令:
Apt-getinstall vim
cd /root
vim.bashrc
使用VIM来编辑bashrc文件(按i键进行编辑),在最后面添加:
export PATH=$PATH:代码根目录 /prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin
然后保存(编辑结束按ESC 输入保存命令为: :wq 不保存命令为: :q!)。
cd /root
source .bashrc
8重新启动虚拟机
9开始编译代码 (拿到代码首先得全编译一次,才能单个编译)
编译命令:
全部编译: ./makeMtk -t yourProjectName new 这个在源码根目录下
单个编译:./makeMtk -t mm 模块的路径
只要有Android.mk文件的地方都是可以编译的。
举例:./makeMtk -t mm packages/apps/Launcher2/
10.[gcc]: unknown (64-bit) [FAIL]
Mtk在检测gcc的时候会存在不兼容的情况,导致无法检测到gcc,出现gcc unkown错误。gcc nv检测的时候 做了以下操作(具体代码位置参见:mediatek/build/tools/checkEnv.py 函数GccCheck。):
是4.6.*以上,就先换安装个4.4.*的,再换成英文系统,编译的时候就可以识别了首先在脚本中执行了gcc --v 命令,然后在返回的信息中通过匹配”.*gcc\s*version\s*”格式查找gcc的版本。由于我们当前的版本是4.6.1 不支持gcc --v, 仅支持gcc -v,而中文语言环境下返回的版本信息中”version”用了中文字符”版本”,会导致匹配不成功。因此需要做以下修改:
1.降低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.baksudo 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:
/usr/bin$ sudo mv g++ g++.bak
/usr/bin$sudo ln -s g++-4.4 g++
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6 ,说明gcc 4.4安装成功。
11.failed to create /media/E/ccache
export CCACHE_DIR=/home/zhujc/ccache