伊人久久无码精品中文字幕,国产精品免费久久久久久久久,93精91精品国产综合久久香蕉,久久99热狠狠色精品一区

針對arm-linux的交叉編譯環(huán)境分析及建立步驟介紹

2013-11-07 23:31 來源:電源網(wǎng) 作者:和靜

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

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

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

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

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

目標(biāo)系統(tǒng)的標(biāo)準(zhǔn)c庫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è)最簡的gcc。由于編譯整個(gè)gcc是需要目標(biāo)機(jī)的glibc庫的,它現(xiàn)在還不存在,因此需要首先生成一個(gè)最簡的gcc,它只需要具備編譯目標(biāo)機(jī)glibc庫的能力即可。

交叉編譯glibc

這一步驟生成的代碼是針對目標(biāo)機(jī)cpu的,因此它屬于一個(gè)交叉編譯過程。該過程要用到linux內(nèi)核頭文件,默認(rèn)路徑為$PREFIX/arm-linux/sys-linux,因而需要在$PREFIX/arm-linux中建立一個(gè)名為sys-linux的軟連接,使其內(nèi)核頭文件所在的include目錄;或者,也可以在接下來要執(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的交叉編譯過程就算完成了,這里需要指出的是,glibc的安裝路徑設(shè)置為$PREFIXARCH=arm/arm-linux,如果此處設(shè)置不當(dāng),第二次編譯gcc時(shí)可能找不到glibc的頭文件和庫。

第二次編譯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í)候可能會出現(xiàn)找不到stdio.h的錯(cuò)誤,解決辦法是修改gcc/config/arm/t-linux文件,在TARGET_LIBGCC2_CFLAGS變量的設(shè)定中增加-Dinhibit_libc和-D__gthr_posix_h。

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

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

ARM Linux 交叉編譯環(huán)境

相關(guān)閱讀

暫無數(shù)據(jù)

一周熱門

伊人久久无码精品中文字幕,国产精品免费久久久久久久久,93精91精品国产综合久久香蕉,久久99热狠狠色精品一区
日韩午夜在线观看视频| 老司机成人在线视频| 亚洲国产精品久久久久婷婷老年 | 欧美精品1区2区| 久久视频一区| 久久人人97超碰国产公开结果 | 农夫在线精品视频免费观看| 久久久国产精品亚洲一区| 久久9热精品视频| 久久精品视频99| 久久另类ts人妖一区二区| 米奇777超碰欧美日韩亚洲| 欧美成人精品h版在线观看| 欧美大学生性色视频| 欧美久久一区| 国产精品高潮在线| 国产日韩精品在线| 韩国三级在线一区| 亚洲欧洲另类国产综合| 一本色道久久88综合日韩精品| 亚洲天堂av电影| 欧美亚洲自偷自偷| 久久乐国产精品| 欧美黄色成人网| 欧美乱在线观看| 欧美女激情福利| 国产精品多人| 国产午夜精品视频| 在线不卡亚洲| 一本久久a久久精品亚洲| 欧美黄色片免费观看| 猛男gaygay欧美视频| 欧美成人蜜桃| 欧美日本免费| 国产精品日韩欧美一区二区三区| 国产日韩精品在线| 在线免费观看日本一区| 99视频精品在线| 午夜免费日韩视频| 老妇喷水一区二区三区| 欧美日韩精品三区| 国产欧美精品国产国产专区| 136国产福利精品导航| av成人免费观看| 欧美中文字幕在线观看| 欧美国产第一页| 国产精品久久久久一区二区三区共| 国产日韩欧美高清免费| 亚洲激情黄色| 午夜精品视频在线观看| 免费欧美在线视频| 国产精品豆花视频| 在线观看视频一区二区欧美日韩| 在线亚洲美日韩| 久久久久久久精| 欧美日韩在线不卡| 韩日精品视频一区| 亚洲天堂av综合网| 久久综合网络一区二区| 国产精品h在线观看| 极品中文字幕一区| 亚洲在线成人精品| 免播放器亚洲一区| 国产拍揄自揄精品视频麻豆| 亚洲精品久久久久久久久久久久久| 午夜精品一区二区三区在线播放| 欧美77777| 国产精品中文字幕欧美| 久久精品国产96久久久香蕉 | 日韩视频免费| 久久国产精彩视频| 欧美日韩一区国产| 在线激情影院一区| 欧美一区二区三区视频在线| 欧美日韩在线大尺度| 亚洲第一网站| 欧美中文在线视频| 国产精品高潮久久| 亚洲精品在线视频| 噜噜噜91成人网| 国产日韩欧美综合在线| 亚洲性夜色噜噜噜7777| 欧美经典一区二区| 在线看国产日韩| 欧美在线看片a免费观看| 国产精品国产三级国产aⅴ浪潮| 91久久精品一区二区三区| 久久国产精品免费一区| 国产精品视频yy9099| 夜夜嗨av一区二区三区网站四季av| 鲁大师影院一区二区三区| 国产午夜精品一区二区三区视频| 亚洲少妇自拍| 欧美日韩国产bt| 亚洲精品一二三区| 欧美不卡视频| 在线看一区二区| 麻豆91精品| 尤物精品在线| 久久在线视频| 亚洲第一黄色| 裸体女人亚洲精品一区| 在线成人小视频| 久久深夜福利| 好看的日韩视频| 久久精品国产96久久久香蕉| 国产欧美日韩在线观看| 性色一区二区三区| 国产日韩精品电影| 欧美一级片一区| 国产视频久久久久| 性色av一区二区三区红粉影视| 国产精品久久久久影院亚瑟| 亚洲一区二区三区视频| 国产精品久久久久9999高清| 亚洲欧美www| 国产九九视频一区二区三区| 校园激情久久| 国产偷自视频区视频一区二区| 欧美中文在线字幕| 国产一区二区av| 久久福利电影| 狠狠综合久久av一区二区小说| 久久久久久亚洲综合影院红桃| 伊人春色精品| 欧美成人午夜77777| 亚洲精品在线一区二区| 欧美日韩国产一级片| 亚洲视频欧洲视频| 国产精品美女主播在线观看纯欲| 亚洲愉拍自拍另类高清精品| 国产日韩欧美a| 久久精品国产精品 | 国产日韩精品入口| 欧美中日韩免费视频| 国产一区二区三区在线观看网站| 欧美亚洲一区二区在线观看| 国产日韩欧美夫妻视频在线观看| 久久精品论坛| 玉米视频成人免费看| 奶水喷射视频一区| 亚洲精品乱码久久久久久蜜桃麻豆 | 亚洲精品久久嫩草网站秘色| 欧美激情1区2区3区| 日韩西西人体444www| 国产精品第三页| 欧美一区二区三区免费在线看| 激情自拍一区| 欧美国产日本韩| 亚洲天堂第二页| 国产亚洲欧美中文| 欧美va亚洲va国产综合| 99精品国产福利在线观看免费| 欧美性生交xxxxx久久久| 欧美一区二区免费观在线| 在线精品高清中文字幕| 欧美日韩伦理在线| 欧美伊人久久| 亚洲精品国产无天堂网2021| 国产精品久久久久久久第一福利| 久久精视频免费在线久久完整在线看| 亚洲欧洲日产国产综合网| 国产精品久久久久91| 久久综合久久综合九色| 99视频在线精品国自产拍免费观看| 国产精品永久在线| 欧美.www| 午夜精品短视频| 1000部国产精品成人观看| 欧美视频日韩视频在线观看| 久久精品国产欧美激情| 亚洲日本欧美在线| 国产精品久久久久久久久久尿 | 国产综合网站| 欧美日韩精品免费| 久久激情五月丁香伊人| 亚洲精品在线视频| 国产一区二区三区网站| 欧美日本中文| 久久久999精品| 一区二区三区不卡视频在线观看| 国产一区二区三区黄| 欧美日韩1080p| 久久国产一区二区| 一本在线高清不卡dvd| 狠狠色2019综合网| 国产精品扒开腿爽爽爽视频| 老司机精品视频一区二区三区| 亚洲主播在线观看| 亚洲国产精品日韩| 国产毛片久久| 欧美日韩爆操| 久久天堂精品| 亚洲综合二区| 亚洲精品欧美一区二区三区| 黄色在线成人| 国产精品影院在线观看| 欧美日韩成人综合| 久久综合九九| 欧美在线亚洲综合一区|