IT培训机构|91免费精品视频|专注编程培训|91免费精品|软件开发培训_91免费国产视频_华清远见教育


搭建嵌入式交叉編譯環境

分享到:
           

    搭建交叉編譯環境是嵌入式開發的第一步,也是關鍵的一步。不同的體系結構、不同的操作內容甚至是不同版本的內核,都會用到不同的交叉編譯器。選擇交叉編譯器非常重要,有些交叉編譯器經常會有部分的BUG,都會導致后的代碼無法正常運行。

    交叉編譯器完整的安裝一般涉及多個軟件的安裝(讀者可以從ftp://gcc.gnu.org/pub/下載),包括binutils、gcc、glibc、glibc-linuxthreads等軟件。其中,binutils主要用于生成一些輔助工具,如readelf、objcopy、objdump、as、ld等;gcc是用來生成交叉編譯器的,主要生成arm-linux-gcc交叉編譯工具(應該說,生成此工具后已經搭建起交叉編譯環境,可以編譯Linux內核了,但由于沒有提供標準用戶函數庫,用戶程序還無法編譯);glibc主要是提供用戶程序所使用的一些基本的函數庫,glibc-linuxthreads是線程相關函數庫。這樣,交叉編譯環境就完全搭建起來了。

    上面所述的搭建交叉編譯環境比較復雜,很多步驟都涉及對硬件平臺的選擇。因此,現在嵌入式平臺社區或廠商一般會提供在各種平臺上測試通過的交叉編譯器,或把以上安裝步驟全部寫入腳本文件或者以發行包的形式提供,這樣就大大方便了用戶的使用。

    這里采用廣泛使用的cross-4.3.2交叉編譯器工具鏈,其使用方法非常簡單。

    $ mkdir –p /usr/local/arm /* 這是交叉編譯器安裝目錄*/
    $ cp cross-4.3.2.bar.bz2 /usr/local/arm
    $ cd /usr/local/arm
    $ tar jxvf cross-4.3.2.tar.gz

    此時在/usr/local/arm/4.3.2/bin/下已經出現了很多交叉編譯工具,顯示如下:

    arm-none-linux-gnueabi-addr2line      arm-none-linux-gnueabi-gfortran
    arm-none-linux-gnueabi-ar             arm-none-linux-gnueabi-gprof
    arm-none-linux-gnueabi-as             arm-none-linux-gnueabi-ld
    arm-none-linux-gnueabi-c++            arm-none-linux-gnueabi-ldd
    arm-none-linux-gnueabi-cc             arm-none-linux-gnueabi-nm
    arm-none-linux-gnueabi-c++filt        arm-none-linux-gnueabi-objcopy
    arm-none-linux-gnueabi-cpp            arm-none-linux-gnueabi-objdump
    arm-none-linux-gnueabi-ct-ng.config   arm-none-linux-gnueabi-populate
    arm-none-linux-gnueabi-g++            arm-none-linux-gnueabi-ranlib
    arm-none-linux-gnueabi-gcc            arm-none-linux-gnueabi-readelf
    arm-none-linux-gnueabi-gcc-4.3.2      arm-none-linux-gnueabi-run
    arm-none-linux-gnueabi-gccbug         arm-none-linux-gnueabi-size
    arm-none-linux-gnueabi-gcov           arm-none-linux-gnueabi-sstrip
    arm-none-linux-gnueabi-gdb            arm-none-linux-gnueabi-strings
    arm-none-linux-gnueabi-gdbtui         arm-none-linux-gnueabi-stri

    可以看到,這個交叉編譯工具集成了binutils、gcc、glibc這幾個軟件,而每個軟件也都有比較復雜的配置信息。

    接下來,在環境變量PATH中添加路徑,就可以直接使用arm-none-linux—gnueabi-gcc命令了。

    $ export PATH=$PATH:/usr/local/arm/4.3.2/bin

    把交叉開發工具鏈的路徑添加到環境變量PATH中,這樣可以方便地在Bash或者Makefile中使用這些工具。通常環境變量的配置文件有如下幾個。
    ● profile類文件:用戶第一次登錄時僅運行一次,profile類文件包括每個用戶主目錄下的.profile文件和/etc/profile等。用戶再次登錄時就會運行主目錄下的.profile文件的腳本。
    ● bashrc類文件:每當打開bash shell時(如當打開一個虛擬終端時)運行該腳本文件。bash類文件包括每個用戶主目錄下的.bashrc文件和/etc/bash.bashrc等。

    把環境變量配置的命令添加到其中一個文件中即可。

    $ arm-linux-gcc –v /*查看交叉編譯器的版本信息*/
    arm-none-linux-gnueabi-gcc -v
    Using built-in specs.
    Target: arm-none-linux-gnueabi
    Configured with: /home/linux/crosstooll/toolchain_build/targets/src/gcc-4.3.2/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-none-linux-gnueabi --prefix=/usr/local/arm/4.3.2 --with-sysroot=/home/linux/toolchain/arm-none-linux-gnueabi//sys-root --enable-languages=c,c++,fortran --disable-multilib --with-arch=armv4t --with-cpu=arm9tdmi --with-tune=arm920t --with-float=soft --with-pkgversion=crosstool-NG-1.8.1-farsight --disable-sjlj-exceptions --enable-__cxa_atexit --disable-libmudflap--with-gmp=/home/linux/crosstooll/toolchain_build/targets/arm-none-linux-gnueabi/build/static--with-mpfr=/home/linux/crosstooll/toolchain_build/targets/arm-none-linux-gnueabi/build/static--enable-threads=posix--enable-target-optspace--with-local-prefix=/home/linux/toolchain/arm-none-linux-gnueabi//sys-root --disable-nls --enable-symvers=gnu--enable-c99 --enable-long-long
    Thread model: posix
    gcc version 4.3.2

    從上面打印的版本信息中可以看到“--prefix=/usr/local/arm/ 4.3.2”,這就是交叉編譯器安裝的路徑。它是在編譯前通過prefix選項配置的,所以,這個工具鏈安裝的路徑必須是/usr/local/arm/4.3.2。

    本文選自華清遠見嵌入式培訓教材《從實踐中學嵌入式Linux應用程序開發》

   熱點鏈接:

   1、構建嵌入式Linux交叉開發環境
   2、嵌入式培訓資料:搭建交叉編譯環境
   3、嵌入式交叉編譯過程詳解
   4、嵌入式linux入門六步走
   5、典型嵌入式Linux系統設置

更多新聞>> 

主站蜘蛛池模板: 自装卸(挂桶)车|钩臂垃圾车|压缩垃圾车|密封自卸车|环卫垃圾车|餐厨车泔水车湖北程力专用车厂家 自建房外墙砖|地砖|墙砖,农村|别墅瓷砖-佛山燊陶丰 | 宿迁市华泰交通设施有限公司,上海第四代路名牌,天津仿罗马柱路名牌,标准路名牌,路名牌灯箱,公交站台,户外广告灯箱, 交通标志牌,社区阅报栏 | 太原石膏基自流平,太原轻质抹灰石膏,太原腻子粉,太原抗裂砂浆-太原乔贝建筑材料有限公司 | 威海赶海网、乳山特产、威海专营海产品、威海旅游产品 - 威海赶海电子商务 | 全自动灌装机械设备-迈驰粉末/颗粒/液体/膏体灌装机械设备流水线生产厂家 | 郑州环球重工机械有限公司建筑垃圾处理专题网站 | 浙江创洁卫生消杀有限公司-浙江杀虫公司,温州消杀公司,温州灭鼠公司,灭蟑螂,灭蚊蝇,灭跳蚤,灭书虱,灭臭虫,灭螨虫,白蚁防治,房间消毒除味等专业服务 | 暖气片厂家_散热器厂家_力春散热器 | 上进电缆(嘉兴)股份有限公司官网 - 光伏电缆|防火电缆|电力电缆|铝合金电缆专业生产厂家 | 苏子富春品牌馆 抚顺市富春农业科技开发有限公司 抚顺特色农产品 抚顺市特色馆 | 玉米脱皮制糁机-玉米深加工机械价格-玉米糁加工机器设备-玉米渣加工成套设备-河南粮院 | 湖南净声源环保科技有限公司是一家专业从事噪声治理和建筑声学设计生态环境综合治理服务的企业,专业从事株洲电梯隔音治理,湘潭中央空调降噪处理,衡阳邵阳冷却塔噪音治理,岳阳常德大型风机噪声隔音降噪,张家界空压机噪声治理,益阳配电房变压器噪声治理,专业郴州永州工厂企业车间噪声治理,怀化娄底专业机械设备减振降治理,武汉噪音治理隔音降噪公司,孝感噪音治理,立式球磨机的噪声控制,专业隔音降噪公司,、以及各类机械动力设备减振降噪噪声治理的公司,同时为客户提供咨询与解决方案 | 三氯异氰尿酸_二水二氯异氰尿酸钠_氰尿酸 | 铝型材定制_东莞铝型材_散热器铝型材_工业铝合金型材挤压加工生产厂家价格-中亚铝业 | 览众房车,房车, 房车厂家, 房车价格, 房车图片,, 四驱房车, 皮卡房车, 越野房车, 依维柯房车, 国产房车, 自动挡房车, | 三坐标测量机_海克斯康三坐标_蔡司三坐标_常州三坐标测量服务中心_苏州长南精密技术有限公司 | 洒水车厂家、消防车、污水处理车厂家-程力专用汽车股份有限公司 洒水车|冷藏车|LED广告车|油罐车|道路救援车|垃圾车|程力专用汽车股份有限公司销售九分公司 | 妙手官网—商品管理、批量修改、订单处理、营销水印 | 浙江创洁卫生消杀有限公司-浙江杀虫公司,温州消杀公司,温州灭鼠公司,灭蟑螂,灭蚊蝇,灭跳蚤,灭书虱,灭臭虫,灭螨虫,白蚁防治,房间消毒除味等专业服务 | 空气能热水器|空气能热水器工程|太阳能热水器工程|蓝冠机电 | 深圳人才网_深圳招聘网_【官方网站】 | 智汇工业-智慧工业、智能制造及工业智能、工业互联门户网站,专业的工业“互联网+”传媒 | 西安真石漆_无机涂料厂家_无机涂料多少钱一个平方—陕西秦森环保科技有限公司 | 上饶环亚电脑会计培训学校--电脑学校|上饶电脑学校|上饶电脑培训|会计培训|上饶会计培训|上饶县会计培训|广丰会计培训|玉山会计培训|横峰会计培训|上饶网店培训 上进电缆(嘉兴)股份有限公司官网 - 光伏电缆|防火电缆|电力电缆|铝合金电缆专业生产厂家 | 双效-多效-三效-废水-污水蒸发器_离心喷雾-污泥干燥机_蒸发浓缩器【天辰环保 】 | 球形钢支座,粘滞阻尼器,抗震球型钢支座,盆式橡胶支座,调谐质量阻尼器,屈曲约束支撑-衡水路泽科技 | 亿企商贸-亿万企业的商务贸易平台-B2B企业产品发布供求信息平台,一带一路中国企业及产品展示平台,免费企业智能自助建站网络营销推广平台,打造B2B企业黄页产品信息发布推广专业综合电子商务平台! | 洒水车_水车_洒水车价格_喷水车_绿化喷洒车_绿化洒水车- 程力专用汽车股份有限公司 | 深圳沃亚游学官网丨国外游学丨国际夏冬令营丨美国游学线路丨出国短期游学丨亲子海外游丨游学咨询: 0755-83843308 | 同步分流马达_液压泵维修_派克多路阀-济南富诚液压设备有限公司 通用变频器|国产变频器|深圳变频器厂家-深圳市英捷思技术有限公司 | 西安泰富西玛电机_西玛电机_西安西玛电机 | 橡皮艇_冲锋舟_充气钓鱼船_橡皮艇价格_海威龙橡皮艇生产厂家-首页 | 聚达|聚达物联|聚达物联科技|杭州聚达物联科技有限公司|www.judawulian.com|智慧社区|数字驾驶舱|智慧清运|智慧工地|邻家小达 | 金蝶软件_金蝶湖南公司_长沙金蝶软件_精斗云软件_财务软件_进销存软件_云ERP软件_金蝶软件销售电话 | 易众拍卖行-事故车拍卖,残值车拍卖,水淹车拍卖,全损车拍卖,修复车拍卖,碰橦车拍卖,瑕疵车拍卖,报废车拍卖,泡水车拍卖,拆车件拍卖,配件拍卖,火烧车拍卖,二手车拍卖专业线上平台 | 纸箱包装,济南纸箱,济南包装盒-济南佳琦包装有限公司 | 深圳市佳顺优印印刷有限公司,佳顺优印,画册印刷,海报印刷,封套印刷,手提袋印刷,包装盒印刷,彩盒印刷,无碳纸印刷,不干胶印刷,信封印刷,便笺印刷,笔记本印刷,台历印刷,挂历印刷,国际会展中心附近印刷厂,宝安印刷厂,宝安教材印刷厂 | 长沙变频器维修,变频器维修,ABB变频器维修,西门子变频器维修,施耐德变频器维修,伺服驱动器维修,工业机器人维修,20年专业工控电气维修,长沙文铖电气设备有限公司_长沙文铖电气设备有限公司 | 河北高新技术企业认定,沧州商标注册,沧州9001质量管理体系认证,沧州高新技术企业认定,沧州体系认证,沧州商标续展,沧州版权登记,河北国瑞企业管理咨询有限公司 | 武汉凯美隆窗帘厂家_定做商用窗帘_家用遮阳帘_涵盖电动窗帘_天棚帘_遮阳棚_凯美隆-专注遮阳产品 武汉净化机-武汉全热新风换气机-武汉静音送风机-武汉东信新风节能设备有限公司 | 苏州交通设施_道路划线_停车场划线_厂区划线_环氧地坪厂家-推荐【飞扬市政交通设施公司】专注交通设施8年! |