• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-3  評論-13  文章-10  trackbacks-0
              2013年1月22日
            google推薦的編譯環(huán)境是在Ubuntu LTS(10.04),但是最新版本12.10已經(jīng)出來,沒必要在舊版本上做文章了
            對于2.3.X和更新的版本,需要64位的系統(tǒng),之前的老版本2.2以下(包括2.2)可以在32位版本上編譯
            對于虛擬機(jī),官網(wǎng)上寫的虛擬機(jī)配置參數(shù):16G RAM/swap & 30G+ 硬盤空間
            PS: 全部編譯完畢后,才發(fā)現(xiàn)真的很耗空間
            源代碼下載/編譯完成后,磁盤空間一共是33G
            $ du -h --max-depth=1 ./4.2/
            4.2M    ./4.2/bootable
            120K    ./4.2/libnativehelper
            282M    ./4.2/packages
            88M    ./4.2/development
            1.6G    ./4.2/external
            19G    ./4.2/out
            53M    ./4.2/hardware
            18M    ./4.2/bionic
            9.1M    ./4.2/system
            138M    ./4.2/cts
            336K    ./4.2/pdk
            116K    ./4.2/abi
            5.1M    ./4.2/gdk
            40M    ./4.2/libcore
            1.2G    ./4.2/frameworks
            4.9M    ./4.2/build
            34M    ./4.2/tools
            2.4G    ./4.2/prebuilts
            43M    ./4.2/device
            7.5G    ./4.2/.repo
            55M    ./4.2/sdk
            5.9M    ./4.2/docs
            41M    ./4.2/dalvik
            31M    ./4.2/ndk
            33G    ./4.2/

            言歸正題,按照官網(wǎng)的文檔,安裝所需要的工具
            Python 2.5 -- 2.7, 下載地址 python.org
            GNU Make 3.81 -- 3.82, 下載地址 gnu.org
            JDK 6 :2.3以上的版本; JDK 5 2.2和2.2以下的版本. 下載地址http://www.oracle.com/technetwork/java/javase/downloads/index.html
            Git 1.7 以上. 下載地址 git-scm.com.
            前兩條Ubuntu 12.10系統(tǒng)自帶(新系統(tǒng)的好處),git后面會通過安裝必須包來安裝,所以只需要我們手動(dòng)安裝JDK

            安裝必要的編譯工具包

            $ sudo 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-glx:i386 \
              libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk 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
            PS: 后來發(fā)現(xiàn)這里可以選擇不安裝openjdk。android生成主要用到的是 jdk1.6
            安裝JDK 1.6.0

            1.下載
            2013-1-22,當(dāng)前最新版本是 1.6.0_38
            http://www.oracle.com/technetwork/java/javase/downloads/jdk6u38-downloads-1877406.html
            這里請選擇64位的linux版本,對應(yīng)的下載文件名:jdk-6u38-linux-x64.bin.
            2.安裝
            修改文件權(quán)限,復(fù)制到/usr/lib/jvm,安裝
            chmod a+x jdk-6u38-linux-x64.bin
            sudo mv jdk-6u38-linux-x64.bin /usr/lib/jvm
            cd /usr/lib/jvm
            sudo ./jdk-6u38-linux-x64.bin
            安裝后,在/usr/lib/jvm上會多出一個(gè)目錄(jdk1.6.0_38),其實(shí)執(zhí)行.bin文件感覺就是一個(gè)解壓文件
            3.環(huán)境配置

            修改/etc/profile文件
            export JAVA_HOME="/usr/lib/jvm/jdk1.6.0_38"
            export PATH=$PATH:$JAVA_HOME/bin
            export CLASSPATH=".:$JAVA_HOME/bin"
            建議重啟或注銷一下系統(tǒng),讓配置生效~~~
            此時(shí)輸入: java --version查看一下版本
            java version "1.6.0_38"
            Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
            Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)
            如果系統(tǒng)中有時(shí)候會安裝openjdk,我們還需要修改一下java的默認(rèn)程序,讓他使用jdk1.6.0進(jìn)行android編譯
            安裝java/javac/jar,執(zhí)行如下命令:
            sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_38/bin/java 300
            sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_38/bin/javac 300
            sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.6.0_38/bin/jar 300

            執(zhí)行后這三個(gè)命令,網(wǎng)上的資源說可以自動(dòng)切換到j(luò)dk1.6.0_38,但是我配置的時(shí)候不行,可能再通過下面這三個(gè)命令,手動(dòng)指定了
            sudo update-alternatives --config java
            sudo update-alternatives --config javac
            sudo update-alternatives --config jar

            代碼下載:

            下載repo,初始化下載環(huán)境,repo配置,同步
            $ mkdir ~/bin  
            $ PATH=~/bin:$PATH 
            $ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
            $ chmod a+x ~/bin/repo 
            $ mkdir ~/android/sources
            $ cd ~/android/sources
            $ repo init -u https://android.googlesource.com/platform/manifest -b android-4.2.1_r1
            $ repo sync

            下載是個(gè)漫長的過程,我的機(jī)子一個(gè)周末開著下載~~~good lucky~~~

            編譯代碼:

            初始化腳本, make編譯
            $ source build/envsetup.sh
            $ lunch full-eng
            $ make -jN

            這里的三個(gè)命令參考官方的文檔,官網(wǎng)上說明很詳細(xì)。特別是第二條命令的參數(shù),你想生成什么樣的配置,就設(shè)定什么樣的參數(shù)
            http://source.android.com/source/building.html

            運(yùn)行emulator

            編譯成功后,運(yùn)行模擬器
            $ emulator
            模擬器就運(yùn)行起來了。。。
            posted @ 2013-01-22 10:20 雙魚座的程序員 閱讀(8215) | 評論 (1)編輯 收藏
              2013年1月14日

            Here’s a quick tip that shows you how to install Oracle (Sun) Java 6 JRE / JDK in Ubuntu 12.10 via PPA. If you still need Java 6 JRE/JDK  in Ubuntu 12.10, then continue below to learn how to install it.

            The advantage of using PPA installer is that you get access to feature updates and bug fixes automatically when you update your system.

            Objectives:

            • Install Oracle ( Sun ) Java 6 JRE / JDK in Ubuntu 12.10
            • Enjoy!

            To get started, press Ctrl – Alt – T on your keyboard to open the terminal. When it opens, run the commands below to add this PPA.

            sudo add-apt-repository ppa:webupd8team/java

            Finally, run the commands below to update your system and install Oracle Java 6 (Sun Java)

            sudo apt-get update && sudo apt-get install oracle-java6-installer

            Enjoy!
            posted @ 2013-01-14 20:34 雙魚座的程序員 閱讀(2271) | 評論 (1)編輯 收藏
              2006年9月4日

            匹配中文字符的正則表達(dá)式: [\u4e00-\u9fa5]
            評注:匹配中文還真是個(gè)頭疼的事,有了這個(gè)表達(dá)式就好辦了

            匹配雙字節(jié)字符(包括漢字在內(nèi)):[^\x00-\xff]
            評注:可以用來計(jì)算字符串的長度(一個(gè)雙字節(jié)字符長度計(jì)2,ASCII字符計(jì)1)

            匹配空白行的正則表達(dá)式:\n\s*\r
            評注:可以用來刪除空白行

            匹配HTML標(biāo)記的正則表達(dá)式:< (\S*?)[^>]*>.*?|< .*? />
            評注:網(wǎng)上流傳的版本太糟糕,上面這個(gè)也僅僅能匹配部分,對于復(fù)雜的嵌套標(biāo)記依舊無能為力

            匹配首尾空白字符的正則表達(dá)式:^\s*|\s*$
            評注:可以用來刪除行首行尾的空白字符(包括空格、制表符、換頁符等等),非常有用的表達(dá)式

            匹配Email地址的正則表達(dá)式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
            評注:表單驗(yàn)證時(shí)很實(shí)用

            匹配網(wǎng)址URL的正則表達(dá)式:[a-zA-z]+://[^\s]*
            評注:網(wǎng)上流傳的版本功能很有限,上面這個(gè)基本可以滿足需求

            匹配帳號是否合法(字母開頭,允許5-16字節(jié),允許字母數(shù)字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
            評注:表單驗(yàn)證時(shí)很實(shí)用

            匹配國內(nèi)電話號碼:\d{3}-\d{8}|\d{4}-\d{7}
            評注:匹配形式如 0511-4405222 或 021-87888822

            匹配騰訊QQ號:[1-9][0-9]{4,}
            評注:騰訊QQ號從10000開始

            匹配中國郵政編碼:[1-9]\d{5}(?!\d)
            評注:中國郵政編碼為6位數(shù)字

            匹配身份證:\d{15}|\d{18}
            評注:中國的身份證為15位或18位

            匹配ip地址:\d+\.\d+\.\d+\.\d+
            評注:提取ip地址時(shí)有用

            匹配特定數(shù)字:
            ^[1-9]\d*$    //匹配正整數(shù)
            ^-[1-9]\d*$   //匹配負(fù)整數(shù)
            ^-?[1-9]\d*$   //匹配整數(shù)
            ^[1-9]\d*|0$  //匹配非負(fù)整數(shù)(正整數(shù) + 0)
            ^-[1-9]\d*|0$   //匹配非正整數(shù)(負(fù)整數(shù) + 0)
            ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮點(diǎn)數(shù)
            ^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配負(fù)浮點(diǎn)數(shù)
            ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮點(diǎn)數(shù)
            ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非負(fù)浮點(diǎn)數(shù)(正浮點(diǎn)數(shù) + 0)
            ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮點(diǎn)數(shù)(負(fù)浮點(diǎn)數(shù) + 0)
            評注:處理大量數(shù)據(jù)時(shí)有用,具體應(yīng)用時(shí)注意修正

            匹配特定字符串:
            ^[A-Za-z]+$  //匹配由26個(gè)英文字母組成的字符串
            ^[A-Z]+$  //匹配由26個(gè)英文字母的大寫組成的字符串
            ^[a-z]+$  //匹配由26個(gè)英文字母的小寫組成的字符串
            ^[A-Za-z0-9]+$  //匹配由數(shù)字和26個(gè)英文字母組成的字符串
            ^\w+$  //匹配由數(shù)字、26個(gè)英文字母或者下劃線組成的字符串
            評注:最基本也是最常用的一些表達(dá)式

            posted @ 2006-09-04 15:58 雙魚座的程序員 閱讀(369) | 評論 (0)編輯 收藏
            僅列出標(biāo)題  
            久久99久久99小草精品免视看 | 亚洲国产精品一区二区久久| 久久久这里只有精品加勒比| 色天使久久综合网天天| 欧美亚洲国产精品久久高清| 久久亚洲美女精品国产精品| 国产精品久久久久…| 久久亚洲国产精品五月天婷| 波多野结衣久久一区二区| 99久久人妻无码精品系列| 美女久久久久久| 99久久国语露脸精品国产| 亚洲第一永久AV网站久久精品男人的天堂AV | 国产成人精品久久免费动漫| 亚州日韩精品专区久久久| 久久九九青青国产精品| 伊人热热久久原色播放www| 国产精品久久自在自线观看| 天堂无码久久综合东京热| 久久精品国产秦先生| 亚洲av日韩精品久久久久久a| 国产无套内射久久久国产| 久久夜色精品国产网站| 国内精品伊人久久久影院| 国产激情久久久久影院| 一本一道久久精品综合| 东京热TOKYO综合久久精品| 久久精品成人欧美大片| 亚洲日韩欧美一区久久久久我| 国产精品青草久久久久福利99| 狠狠色丁香婷婷综合久久来| 亚洲精品白浆高清久久久久久| 久久亚洲国产精品123区| 久久国产美女免费观看精品| 999久久久免费国产精品播放| 国产日产久久高清欧美一区| 国产精品久久久久久久久| .精品久久久麻豆国产精品| 91精品国产高清91久久久久久| 久久精品99久久香蕉国产色戒| 人妻少妇久久中文字幕一区二区|