1. 簡介
本文描述在X86 64位機(CPU i5)建立Android 4.2編譯環境。
2. 安裝Ubuntu12.10
從http://releases.ubuntu.com/quantal/上下載 PC
(Intel x86) desktop image,然後進行安裝即可。
2.1 安裝vim
sudo apt-get install vim
2.2 設定root密碼及root登入
sudo passwd root
設定可使用root使用者登入:
vim /etc/lightdm/lightdm.conf
在最後增加一行:
greeter-show-manual-login=true
儲存檔案,重啟系統則可用root登入。
2.3 安裝ssh伺服器
sudo apt-get install openssh-server
重啟系統則生效。
2.4 安裝並配置samba
sudo apt-get install samba
用以下smb.conf替換/etc/samba/smb.conf,並把原來的做一個備份,此配置將使系統每個使用者都以自己的根目錄訪問samba。
# smb.conf is the main Samba configuration file. You find a full commented# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the# samba-doc package is installed.# Date: 2007-09-22[global]workgroup = WORKGROUPprinting = cupsprintcap name = cupsprintcap cache time = 750cups options = rawinclude = /etc/samba/dhcp.conflogon path = \\%L\profiles\.msprofilelogon home = \\%L\%U\.9xprofilelogon drive = P:#usershare allow guests = Yesdomain logons = Yesdomain master = Yeslocal master = Yesos level = 65preferred master = Yesnull passwords = yessecurity = shareguest ok = yesusershare max shares = 100security = userencrypt passwords = yessmb password file = /etc/samba/smbpasswd#root = jerry#[tim]#comment = tim #inherit acls = Yes#path = /home/tim#read only = No[homes] comment = Home Directories browseable = no writable = yes valid users = %S
2.5 建立Linux及samba使用者
相關命令如下所示:
// Create Linux user and root directory#adduser tim // Create samba user#mbpasswd -a tim// start samba service#service smbd restart
3. 建立Android4.2編譯環境
Android編譯環境需求如下:
• Python 2.6 -- 2.7:可從python.org下載,Ubuntu12.10中已經包含Python2.7;
• GNU Make 3.81 -- 3.82:可從gnu.org下載,Ubuntu12.10中已經包含3.81;
•JDK 6:Android2.3以上的版本,可Java SE 6 Downloads上下載jdk-6u45-linux-x64.bin,然後進行安裝;
•Git 1.7或以上版本:可從 git-scm.com上下載。
3.1 安裝必要的編譯工具包
$ sudo apt-get install git gnupg flex bison gperf build-essential \ zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \ libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \ libgl1-mesa-dev g++-multilib mingw32 tofrodos \ python-markdown libxml2-utils xsltproc zlib1g-dev:i386$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
安裝上面的會導致案頭功能表列不見了,下面的就沒有問題。
$ apt-get install git 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 g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
經過測試發現,只要執行了: apt-get install libgl1-mesa-glx:i386,它將刪除以下三個模組,從面導致Ubuntu案頭不見了。
The following packages will be REMOVED: libgl1-mesa-dri ubuntu-desktop xorg
3.2 安裝JDK6
1) 下載jdk-6u45-linux-x64.bin
2) 安裝JDK6
chmod a+x jdk-6u45-linux-x64.binsudo mv jdk-6u38-linux-x64.bin /usr/javacd /usr/javasudo ./jdk-6u45-linux-x64.bin
3) 修改設定檔/root/.bashrc(對所有使用者有效)
export JAVA_HOME=/usr/java/jdk1.6.0_45export PATH=$PATH:$JAVA_HOME:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
重啟系統,使用 java --version確認java版本是否為:1.6.0_45
4. 安裝SDK和NDK4.1 安裝SDK
1) 下載SDK(如:android-sdk_r22.0.5-linux.tgz)從http://developer.android.com/sdk/index.html
2) copy SDK到/usr/android/
3) tar xvf android-sdk-r22.0.5-linux.tgz
4) 修改設定檔/root/.bashrc
export SDK_HOME=/usr/android/android-sdk-linuxexport PATH=$PATH:$SDK_HOME/tools:$SDK_HOME/platform-tools
5) 更新SDK:tools/android update sdk --no-ui 或tools/android sdk(有介面進行選擇)
4.2 安裝NDK
1)下載NDK(如:android-ndk-r9-linux-x86_64.tar.bz2)
從以下地址:
http://developer.android.com/tools/sdk/ndk/index.html
2) copy NDK到/usr/android/
3) tar xvf android-ndk-r9-linux-x86_64.tar.bz2
4) 修改設定檔/root/.bashrc
export PATH=$PATH:/usr/android/android-ndk-r9
參考:http://source.android.com/source/initializing.html