国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號(hào)

建立針對(duì)arm-linux的交叉編譯環(huán)境
2006-06-22   賽迪網(wǎng)

交叉編譯環(huán)境介紹

交叉編譯是嵌入式開發(fā)過(guò)程中的一項(xiàng)重要技術(shù),它的主要特征是某機(jī)器中執(zhí)行的程序代碼不是在本機(jī)編譯生成,而是由另一臺(tái)機(jī)器編譯生成,一般把前者稱為目標(biāo)機(jī),后者稱為主機(jī)。采用交叉編譯的主要原因在于,多數(shù)嵌入式目標(biāo)系統(tǒng)不能提供足夠的資源供編譯過(guò)程使用,因而只好將編譯工程轉(zhuǎn)移到高性能的主機(jī)中進(jìn)行。

linux下的交叉編譯環(huán)境重要包括以下幾個(gè)部分:

針對(duì)目標(biāo)系統(tǒng)的編譯器gcc

針對(duì)目標(biāo)系統(tǒng)的二進(jìn)制工具binutils

目標(biāo)系統(tǒng)的標(biāo)準(zhǔn)c庫(kù)glibc

目標(biāo)系統(tǒng)的linux內(nèi)核頭文件

交叉編譯環(huán)境的建立步驟

下載源代碼

下載包括binutils、gcc、glibc及l(fā)inux內(nèi)核的源代碼(需要注意的是,glibc和內(nèi)核源代碼的版本必須與目標(biāo)機(jī)上實(shí)際使用的版本保持一致),并設(shè)定shell變量PREFIX指定可執(zhí)行程序的安裝路徑。

編譯binutils

首先運(yùn)行configure文件,并使用--prefix=$PREFIX參數(shù)指定安裝路徑,使用--target=arm-linux參數(shù)指定目標(biāo)機(jī)類型,然后執(zhí)行make install。

配置linux內(nèi)核頭文件

首先執(zhí)行make mrproper進(jìn)行清理工作,然后執(zhí)行make config ARCH=arm(或make menuconfig/xconfig ARCH=arm)進(jìn)行配置(注意,一定要在命令行中使用ARCH=arm指定cpu架構(gòu),因?yàn)槿笔〖軜?gòu)為主機(jī)的cpu架構(gòu)),這一步需要根據(jù)目標(biāo)機(jī)的實(shí)際情況進(jìn)行詳細(xì)的配置,筆者進(jìn)行的實(shí)驗(yàn)中目標(biāo)機(jī)為HP的ipaq-hp3630 PDA,因而設(shè)置system type為SA11X0,SA11X0 Implementations中選擇Compaq iPAQ H3600/H3700。

配置完成之后,需要將內(nèi)核頭文件拷貝到安裝目錄: cp -dR include/asm-arm $PREFIX/arm-linux/include/asm cp -dR include/linux $PREFIX/arm-linux/include/linux

第一次編譯gcc

首先運(yùn)行configure文件,使用--prefix=$PREFIX參數(shù)指定安裝路徑,使用--target=arm-linux參數(shù)指定目標(biāo)機(jī)類型,并使用--disable-threads、--disable-shared、--enable-languages=c參數(shù),然后執(zhí)行make install。這一步將生成一個(gè)最簡(jiǎn)的gcc。由于編譯整個(gè)gcc是需要目標(biāo)機(jī)的glibc庫(kù)的,它現(xiàn)在還不存在,因此需要首先生成一個(gè)最簡(jiǎn)的gcc,它只需要具備編譯目標(biāo)機(jī)glibc庫(kù)的能力即可。

交叉編譯glibc

這一步驟生成的代碼是針對(duì)目標(biāo)機(jī)cpu的,因此它屬于一個(gè)交叉編譯過(guò)程。該過(guò)程要用到linux內(nèi)核頭文件,默認(rèn)路徑為$PREFIX/arm-linux/sys-linux,因而需要在$PREFIX/arm-linux中建立一個(gè)名為sys-linux的軟連接,使其內(nèi)核頭文件所在的include目錄;或者,也可以在接下來(lái)要執(zhí)行的configure命令中使用--with-headers參數(shù)指定linux內(nèi)核頭文件的實(shí)際路徑。

configure的運(yùn)行參數(shù)設(shè)置如下(因?yàn)槭墙徊婢幾g,所以要將編譯器變量CC設(shè)為arm-linux-gcc):

CC=arm-linux-gcc ./configure --prefix=$PREFIX/arm-linux --host=arm-linux --enable-add-ons

最后,按以上配置執(zhí)行configure和make install,glibc的交叉編譯過(guò)程就算完成了,這里需要指出的是,glibc的安裝路徑設(shè)置為$PREFIXARCH=arm/arm-linux,如果此處設(shè)置不當(dāng),第二次編譯gcc時(shí)可能找不到glibc的頭文件和庫(kù)。

第二次編譯gcc

運(yùn)行configure,參數(shù)設(shè)置為--prefix=$PREFIX --target=arm-linux --enable-languages=c,c++。

運(yùn)行make install。

到此為止整個(gè)交叉編譯環(huán)境就完全生成了。

幾點(diǎn)注意事項(xiàng)

第一點(diǎn)、在第一次編譯gcc的時(shí)候可能會(huì)出現(xiàn)找不到stdio.h的錯(cuò)誤,解決辦法是修改gcc/config/arm/t-linux文件,在TARGET_LIBGCC2_CFLAGS變量的設(shè)定中增加-Dinhibit_libc和-D__gthr_posix_h。

第二點(diǎn)、對(duì)與2.3.2版本的glibc庫(kù),編譯linuxthread/sysdeps/pthread/sigaction.c時(shí)可能出錯(cuò),需要通過(guò)補(bǔ)丁glibc-2.3.2-arm.patch解決:執(zhí)行patch -p1 < glibc-2.3.2-arm.patch

第三點(diǎn)、第二次編譯gcc時(shí)可能會(huì)出現(xiàn)libc.so的錯(cuò)誤,這是需要利用文本編輯器手動(dòng)修改libc.so。
(e129)

熱詞搜索:

上一篇:Windows注冊(cè)表修改實(shí)例完全手冊(cè)上(3)
下一篇:系統(tǒng)管理:硬盤安裝LINUXFC4全過(guò)程

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
国产女主播视频一区二区| 91精品视频网| 国产jizzjizz一区二区| 精品一区二区三区香蕉蜜桃| 日韩vs国产vs欧美| 肉色丝袜一区二区| 日韩精品亚洲专区| 免费观看30秒视频久久| 美女视频黄免费的久久| 青青草原综合久久大伊人精品优势| 香蕉影视欧美成人| 强制捆绑调教一区二区| 麻豆高清免费国产一区| 另类欧美日韩国产在线| 国产精品1区2区3区在线观看| 精品一区二区影视| 国产成人综合网站| 91在线视频观看| 欧美视频在线观看一区| 日韩电影在线观看网站| 色综合天天性综合| 欧美日韩第一区日日骚| 日韩三级中文字幕| 国产精品欧美综合在线| 亚洲一区二区在线播放相泽| 久久99精品网久久| 一本一道综合狠狠老| 日韩一级片在线观看| 国产日韩v精品一区二区| 亚洲人成亚洲人成在线观看图片| 亚洲成在线观看| 国产高清一区日本| 欧美视频在线观看一区二区| 久久午夜国产精品| 一区二区成人在线| 狠狠色狠狠色综合| 在线观看视频91| 久久久亚洲精华液精华液精华液| 国产精品看片你懂得| 免费高清成人在线| 91亚洲精品一区二区乱码| 在线不卡中文字幕播放| 国产精品麻豆视频| 久久精品国产99久久6| 色噜噜狠狠成人中文综合| 欧美精品一区二区不卡| 亚洲二区在线视频| 成人一级视频在线观看| 日韩欧美在线影院| 亚洲小少妇裸体bbw| 成人免费观看av| 久久久久久久久岛国免费| 日欧美一区二区| 日本二三区不卡| 一区在线观看免费| 国产精品99久久久久久有的能看 | 一区二区三区四区五区视频在线观看| 午夜a成v人精品| 在线一区二区视频| 亚洲日本乱码在线观看| 国产精品一区专区| 在线不卡a资源高清| 亚洲最大色网站| 99九九99九九九视频精品| 国产日韩v精品一区二区| 免费观看30秒视频久久| 欧美一区二区精美| 日本怡春院一区二区| 在线不卡的av| 奇米色一区二区三区四区| 777久久久精品| 天堂久久一区二区三区| 欧美久久久久久久久| 夜夜爽夜夜爽精品视频| 一本到不卡免费一区二区| 亚洲欧洲韩国日本视频 | 国产精品视频观看| 高清国产午夜精品久久久久久| 2021中文字幕一区亚洲| 亚洲精品在线观| 91精品久久久久久久久99蜜臂| 一级特黄大欧美久久久| 欧洲视频一区二区| 亚洲国产婷婷综合在线精品| 欧美三级电影一区| 日韩和欧美一区二区三区| 日韩亚洲欧美在线| 激情综合色播激情啊| 2021国产精品久久精品| 国产精品白丝jk黑袜喷水| 中文乱码免费一区二区| 91久久久免费一区二区| 天天影视色香欲综合网老头| 日韩一区二区视频| 国产成人丝袜美腿| 亚洲一区二区精品视频| 欧美一级二级在线观看| 国产精品小仙女| 亚洲免费在线看| 欧美美女bb生活片| 国产高清一区日本| 亚洲一区二区不卡免费| 26uuu亚洲| 在线观看免费一区| 国产一区欧美二区| 亚洲人成亚洲人成在线观看图片| 欧美精品日日鲁夜夜添| 大美女一区二区三区| 一二三四区精品视频| 精品三级av在线| 色狠狠一区二区| 国内精品久久久久影院薰衣草 | 久久久久国产精品人| av一区二区三区黑人| 香蕉影视欧美成人| 欧美国产欧美亚州国产日韩mv天天看完整| www.亚洲激情.com| 亚洲国产美女搞黄色| 久久久久久久久久久久久久久99| 日本韩国欧美三级| 不卡一区二区中文字幕| 久久精品国产999大香线蕉| 亚洲色欲色欲www| 日本一区免费视频| 日韩一区二区三区av| 在线一区二区三区| 亚洲一区二区三区不卡国产欧美| 亚洲成人av中文| 成人欧美一区二区三区1314| 日韩视频免费观看高清完整版 | 一区二区成人在线观看| 久久精品视频一区| 在线不卡a资源高清| 色94色欧美sute亚洲线路一ni | 欧美三片在线视频观看| 成人爱爱电影网址| 国产一区在线看| 麻豆精品视频在线观看| 亚洲一级二级三级| 亚洲另类在线一区| 国产精品国产a级| 日本一区二区三区视频视频| 久久亚洲综合av| 久久―日本道色综合久久| 欧美mv日韩mv亚洲| 欧美一区二区三区爱爱| 欧美一二三四区在线| 欧美日韩一区二区三区免费看| 91在线视频播放| 色综合久久88色综合天天| av影院午夜一区| 91麻豆免费视频| 色婷婷综合久久久久中文| 91浏览器入口在线观看| 97精品超碰一区二区三区| 成人av在线观| 99国产精品久久久久久久久久久| 成人黄色网址在线观看| av电影在线观看完整版一区二区| 懂色中文一区二区在线播放| 成人av第一页| 色婷婷综合在线| 欧美欧美午夜aⅴ在线观看| 欧美日本一区二区三区四区| 91精品国产综合久久婷婷香蕉| 欧美一区二区三区免费视频| 欧美不卡视频一区| 国产亚洲美州欧州综合国| 精品国产电影一区二区| 国产清纯白嫩初高生在线观看91| 久久九九全国免费| 18欧美亚洲精品| 亚洲国产美国国产综合一区二区| 日韩成人一区二区| 国产精品123区| 色女孩综合影院| 91麻豆精品国产91久久久使用方法 | 国产真实乱偷精品视频免| 国产精品一区二区在线观看不卡| 国产精品白丝av| 欧美图片一区二区三区| 精品久久人人做人人爰| 国产精品成人网| 日韩成人av影视| 成人福利视频在线看| 欧美日韩色一区| 国产亚洲欧美日韩在线一区| 亚洲精品成人少妇| 久久99精品久久久久久国产越南| av欧美精品.com| 91精品国产色综合久久久蜜香臀| 精品成人一区二区三区| 亚洲精品亚洲人成人网在线播放| 日本亚洲视频在线| av资源网一区| 日韩精品一区二区三区老鸭窝| 亚洲欧洲综合另类| 国产一区视频导航| 欧美一区二区在线免费播放| 日韩毛片一二三区|