<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 312, 文章 - 14, 評(píng)論 - 1393, 引用 - 0
    數(shù)據(jù)加載中……

    Android深度探索(卷1):安裝C/C++交叉編譯環(huán)境

          X86架構(gòu)的CPU采用的是復(fù)雜指令集(Complex Instruction Set Computer,CICS),而ARM架構(gòu)的CPU使用的是精簡(jiǎn)指令集(Reduced Instruction Set Computer,RISC)。由于這兩種架構(gòu)的CPU使用了不同的指令集,因此在X86架構(gòu)上開發(fā)可運(yùn)行在ARM架構(gòu)上的程序就必須要使用交叉編譯器。 通常交叉編譯器和相關(guān)工具包含的了很多可執(zhí)行文件以及大量的共享庫(kù)及頭文件等資源。這些資源的集合稱為交叉編譯環(huán)境。

                     李寧的新浪微博 http://weibo.com/androidguy 歡迎關(guān)注

     
         在Internet上可以找到集成好的交叉編譯環(huán)境,Android NDK和Android源代碼中也包含的交叉編譯環(huán)境。當(dāng)然,如果我們需要一個(gè)完全獨(dú)立的交叉編譯環(huán)境,可以下載集成好的交叉編譯環(huán)境,也可以自己制作 (比較復(fù)雜,建議讀者下載集成好的交叉編譯環(huán)境)。下面介紹一個(gè)CodeSourcery交叉編譯環(huán)境,這個(gè)交叉編譯環(huán)境直接下載安裝就可以安裝。

        讀者可通過(guò)如下的網(wǎng)站訪問(wèn)CodeSourcery下載頁(yè)面。

    http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/

        上面的頁(yè)面并未直接提供CodeSourcery的下載鏈接,讀者可以點(diǎn)擊“Download the GNU/Linux Release”鏈接,并輸入Email(建議使用Gmail)、地址等信息,最后點(diǎn)擊“Get Lite!”按鈕提交信息。如圖2-29所示。最后系統(tǒng)會(huì)將下載地址發(fā)送到剛才輸入的Email。

    進(jìn)入下載頁(yè)面,會(huì)看到如圖2-30所示的不同版本的下載鏈接,選擇最新的版本即可。

                  圖2-30  CodeSourcery的不同版本

           進(jìn)入CodeSourcery的下載頁(yè)面后,會(huì)看到如圖2-31所示的下載鏈接。目前CodeSourcery有Windows和Linux兩個(gè)版本。本書使用的是第1個(gè)(IA32 GNU/Linux Installer)。

         Linux版本的安裝文件是bin格式,讀者可執(zhí)行下面的命令安裝CodeSourcery。其中package表示CodeSourcery的安裝文件名。

    sh package.bin

         執(zhí)行上面的命令后,會(huì)顯示可視化的安裝界面,如圖2-32所示,讀者可按提示安裝CodeSourcery。

          為了使用方便,建議讀者將如下路徑加到PATH環(huán)境變量中。

       /root/compilers/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bin

        下面編寫一個(gè)簡(jiǎn)單的C程序來(lái)測(cè)試一下這個(gè)交叉編譯環(huán)境。

    //  first.c
     
    #include 
    <stdio.h>
     
    int main()
    {
        printf(
    "first arm program\n");
        
    return 0;
    }

    輸入下面的命令編譯first.c文件(需要加-static選項(xiàng))。

    # arm-none-linux-gnueabi-gcc -static -o first first.c

    輸入下面的命令將first文件上傳到任意的Android設(shè)備的/data/local目錄中(沒(méi)有root權(quán)限也可以)。

    # adb push first /data/local

    使用adb shell命令進(jìn)入Android設(shè)備的控制臺(tái),并進(jìn)入/data/local目錄,執(zhí)行如下的命令

    # ./first

         執(zhí)行上面的命令就會(huì)輸出“first arm program”信息。first程序在X86架構(gòu)上運(yùn)行的Ubuntu Linux中是無(wú)法運(yùn)行的。讀者可以試著在Ubuntu Linux中運(yùn)行first程序,看看會(huì)發(fā)生什么。


    注意:在安裝Code Sourcery的過(guò)程中會(huì)在/lib目錄尋找一個(gè)libc.so.6庫(kù)文件,但在Ubuntu Linux11.04及以上版本/lib目錄已經(jīng)沒(méi)有l(wèi)ibc.so.6庫(kù)文件了。這個(gè)庫(kù)文件被放在了其他的目錄。在32位的Ubuntu Linux中該文件的路徑是/lib/i386-linux-gnu/libc.so.6,在64位的Ubuntu Linux中該文件的路徑是/lib/x86_64-linux-gnu/libc.so.6。在安裝Code Sourcery之前可以使用ln命令為libc.so.6文件在/lib目錄建立一個(gè)鏈接。

    本文節(jié)選至《Android深度探索(卷1):HAL與驅(qū)動(dòng)開發(fā)》, 接下來(lái)幾篇文章將詳細(xì)闡述如何開發(fā)ARM架構(gòu)的Linux驅(qū)動(dòng),并分別利用android程序、NDK、可執(zhí)行文件測(cè)試Linux驅(qū)動(dòng)。可在ubuntu Linux、Android模擬器和S3C6410開發(fā)板(可以選購(gòu)OK6410-A開發(fā)板,需要刷Android)






    Android開發(fā)完全講義(第2版)(本書版權(quán)已輸出到臺(tái)灣)

    http://product.dangdang.com/product.aspx?product_id=22741502



    Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


    新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

    posted on 2013-01-28 23:28 銀河使者 閱讀(6232) 評(píng)論(0)  編輯  收藏 所屬分類: 原創(chuàng)linux 圖書

    主站蜘蛛池模板: 亚洲精选在线观看| 国产麻豆剧传媒精品国产免费| 亚洲一区二区在线免费观看| 最近的免费中文字幕视频| 国产精品亚洲美女久久久| 国产精品亚洲精品日韩动图| 成在线人视频免费视频| 成人免费男女视频网站慢动作| 91亚洲性爱在线视频| 男人的天堂网免费网站| 亚洲精品无码久久毛片| 亚洲午夜福利在线视频| 巨波霸乳在线永久免费视频| 丝袜熟女国偷自产中文字幕亚洲| 亚洲熟妇AV日韩熟妇在线| 天天摸天天操免费播放小视频| 久久精品国产亚洲av水果派| 9i9精品国产免费久久| 亚洲国产午夜中文字幕精品黄网站| 四虎精品成人免费视频| 日本不卡免费新一二三区| 在线亚洲精品视频| 亚洲色大成网站WWW久久九九| 美女羞羞视频免费网站 | 亚洲成年人免费网站| 亚洲AV无码乱码在线观看代蜜桃| 永久免费AV无码网站国产| 亚洲乱码国产一区网址| 花蝴蝶免费视频在线观看高清版| 亚洲精品电影天堂网| 亚洲精品免费在线观看| 亚洲videosbestsex日本| 免费女人18毛片a级毛片视频| 亚洲av永久无码精品网址| 成人免费视频网址| 人成午夜免费大片在线观看| 亚洲午夜久久久精品影院| 在线免费观看一级毛片| 在线免费观看h片| 亚洲色精品88色婷婷七月丁香| 日本最新免费网站|