找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 22057|回复: 0

[原创]Ubuntu 14.04 LTS的MTK android编译环境.

[复制链接]
发表于 2015-4-14 23:18:23 | 显示全部楼层 |阅读模式
第一次玩Android,弄来一点资源,碰到一些编译问题,为此,将搭建ubuntu 14.04 LTS版本的编译环境,做个记录。
3 b0 E* h) \- [' E5 R0 C9 j9 R7 n3 E. @, P7 L; Z4 i  \7 |4 {: L9 H
一、for MTK8382
8 ?/ s) F8 a& Y! ?' v4 ^# c. A* s; j, _5 b- D7 q1 t
1、安装完OS,保持网络畅通,安装ia32老的库和相应的开发工具及库,
  1. sudo -i  Q2 Q" _5 @/ G4 o+ Z* l
  2. cd /etc/apt/sources.list.d/ x/ {( q7 o1 s2 e4 a  I  J
  3. echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list
    3 ^2 y& r' v* d$ g1 T
  4. apt-get update5 J" G( u( |0 L+ |
  5. apt-get install ia32-libs/ K/ l( v' G0 b9 A' k6 P7 F
  6. * o; B: t+ f4 V: s3 _9 R; d0 {" u
  7. apt-get install dpkg-dev
    - r( B4 |( X7 c+ \4 x

  8.   L) E$ Y" w2 z! z" [0 a
  9. apt-get install git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev:i386 g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
    ) ?# s- O& ~$ A1 |
复制代码
2、安装JDK和SDK
2 W7 P6 D" V" N; p' m/ B& K5 @
9 x$ d! }; ]7 m( R' Y. z0 ~" t从Orace网站上找jdk-6u23-linux-x64.bin :http://www.oracle.com/technetwor ... javase6-419409.html
  1. cp jdk-6u23-linux-x64.bin /opt/" I( Y9 o* d% |& l6 |/ g: m  \
  2. chmod a+x jdk-6u23-linux-x64.bin
    & G* m. x) h  B. [9 g
  3. ./jdk-6u23-linux-x64.bin
复制代码
google官网上下载adt-bundle-linux-x86_64-20140321.zip : https://dl.google.com/android/ad ... x86_64-20140321.zip) G& T* V3 L; y% {
如果下不到,可能需要翻墙,或者在网上搜相应的文件,找到下载即可
  1. unzip adt-bundle-linux-x86_64-20140321.zip& a0 J* Y* ?# y+ B% J- @7 D
  2. cd adt-bundle-linux-x86_64-201403218 f4 \- L' z) _5 }1 p: F6 n) G
  3. sudo cp -r * /opt/
复制代码
3、改变shell环境变量
  1. sudo gedit $HOME/.bashrc
复制代码
增加如下内容
  1. JAVA_HOME=/opt/jdk1.6.0_23% O6 s, r$ W$ `# U& s3 Z( o1 j2 Q* {6 [
  2. export JAVA_HOME
    6 i+ l/ }+ `' L
  3.   N+ g' ]0 ~6 [2 k4 |8 b
  4. ANDROID_JAVA_HOME=/opt/jdk1.6.0_23
    ' u, q( f/ d! {' j" @
  5. export ANDROID_JAVA_HOME: D8 V$ k+ M/ ~
  6. export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib# z1 u6 l6 j5 T7 z

  7. 8 Z8 e( z* {; Z; B, z# q
  8. PATH=/opt/jdk1.6.0_23/bin:/opt/sdk/platform-tools:/opt/sdk/tools:$PATH
    , N7 H5 b; r7 i& I3 O
  9. export PATH
复制代码
4、安装gcc 4.4,并使用此版本
  1. sudo -s* p4 m% V! _  _/ v$ U
  2. apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib5 K1 E5 M3 F! ?6 `( j; u* ~: _
  3. cd /usr/bin/
    8 g8 X, L. e5 k! ^9 g# E
  4. mv gcc gcc.4.85 E' _* X$ v# y, ?9 S& S9 q
  5. mv g++ g++.4.8. ?1 y7 V7 D3 e  K$ u5 U) T( ?, @
  6. ln -s g++-4.4 g++
    ' f/ ?! ?3 k- A5 W5 @4 q
  7. ln -s gcc-4.4 gcc
复制代码
5、重新打开shell,编译时,发现log_err :
  1. `mediatek/protect/frameworks/base/*/': No such file or directory
复制代码
以为android的编译错误只会放在log_err里,看了半天没找到原因,后面看log时才发现:
  1. Can't locate Switch.pm in @INC (you may need to install the Switch module) (@INC contains: /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .) at external/webkit/Source/WebCore/make-hash-tools.pl line 23.0 G+ p1 J& }# L
  2. BEGIN failed--compilation aborted at external/webkit/Source/WebCore/make-hash-tools.pl line 23.
复制代码
开打pl文件,并依据提示,少了libswitch-perl库。在此提示,请尽量检查log……安装相应的库文件。
  1. sudo apt-get install libswitch-perl
复制代码
按以上顺序,编译即成功.& a9 b0 u6 s, `* u2 O/ O. `: G3 _
您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2025-2-22 02:08 , Processed in 0.070599 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表