<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 建立ARM+Linux運(yùn)行環(huán)境

          建立ARM+Linux運(yùn)行環(huán)境

          作者: 時(shí)間:2016-11-09 來(lái)源:網(wǎng)絡(luò) 收藏
          前一個(gè)階段主要是在Windowsxp下,通過(guò)ADS1.2、H-JTAG和DNW來(lái)對(duì)代碼進(jìn)行編輯和調(diào)試。現(xiàn)在轉(zhuǎn)到Linux下,利用RedHat9.0+虛擬機(jī)作為開(kāi)發(fā)環(huán)境,這里將這兩天來(lái)對(duì)環(huán)境的配置及其遇到的問(wèn)題總結(jié)一下。

          本文引用地址:http://www.ex-cimer.com/article/201611/317969.htm

          開(kāi)發(fā)板為GEC2410,在Linux下的環(huán)境搭建相對(duì)于Windows來(lái)說(shuō)要麻煩一些。原先再Windows下,利用廣嵌提供的Bootloader(GEC2410_BIOS_320240.bin)、kernel(zImage-gec2410-linux-2.6.8.tar.bz2)、fs(gec2410_demo.cramfs),能夠直接燒寫(xiě)運(yùn)行,可是將bootloader換成vivi后,對(duì)廣嵌所提供的內(nèi)核通過(guò)xmodem下載后卻不能引導(dǎo),于是換成用SBC2410學(xué)習(xí)套件中所提供的源碼來(lái)燒寫(xiě),包括vivi-bootloader(boot.tgz),經(jīng)過(guò)裁剪的Linux內(nèi)核(matrix5-kernel.tgz),根文件系統(tǒng)(root-for-nfs-v5.tgz)。下面開(kāi)始下載安裝:

          1. 安裝Linux下燒寫(xiě)工具Jflash:

          建立friendly-arm工作目錄,以后所有的Linux想過(guò)工具都安裝到此目錄

          $ mkdir /friendly-arm

          $ mkdir /friendly-arm/Jflash

          $ tar xzvf Jflash.tgz –C /friendly-arm/Jflash

          $ cd /friendly-arm/Jlash可發(fā)現(xiàn)可執(zhí)行文件Jflash-s3c2410,以后可通過(guò)它來(lái)對(duì)bootloader進(jìn)行燒寫(xiě);

          2. 安裝交叉編譯工具:arm-linux-2.95.3.tgz arm-linux-3.4.1.

          下載地址:

          http://www.handhelds.org/download/projects/toolchain/arm-linux-gcc-3.4.1.tar.bz2

          http://ftp.snapgear.org:9981/pub/snapgear/tools/arm-linux/

          對(duì)于vivi-bootloader的編譯較高版本的交叉編譯器不能編譯,具體是不能識(shí)別某個(gè)符號(hào)。所以對(duì)于vivi-bootloader的編譯最好使用2.95.3版本。

          $ mkdir /usr/local/arm/2.95.3

          $ tar zxvf arm-linux-2.95.3 –C /usr/local/arm/2.95.3

          添加環(huán)境變量:

          修改 /etc/profile,將/usr/local/arm/2.95.3/bin 添加進(jìn)環(huán)境變量.

          重新載入該文件配置:$ source /etc/profile

          對(duì)于arm-linux-3.4.1的安裝方法同上.

          3. 編譯并燒寫(xiě)vivi-bootloader

          $ tar zxvf boot.tgz –C /friendly-arm

          $ cd /friendly-arm/vivi

          默認(rèn)配置就行了,并保存退出:make menuconfig

          編譯 Make

          之后在當(dāng)前目錄下生成vivi二進(jìn)制映像文件,可通過(guò)Jlash將它燒寫(xiě)到Nandflash.

          4. 編譯和配置內(nèi)核

          $ tar zxvf matrix5-kernel.tgz –C /friendly-arm

          默認(rèn)配置,$make menuconfig

          編譯,$make zImage

          最后生成內(nèi)核映像文件位于arch/arm/boot目錄.

          5. 安裝用于作為網(wǎng)絡(luò)文件系統(tǒng)(nfs)的root目錄

          $ tar zxvf root-for-nfs-v5.tgz –C /friendly-arm

          通過(guò)修改/etc/exprots指定根文件共享目錄:

          將“ /friendly-arm/root *(rw,sync,no_root_Squash) ”加入該文件.

          啟動(dòng)網(wǎng)絡(luò)文件系統(tǒng)(nfs)服務(wù), $ /etc/init.d/nfs restart

          6.通過(guò)minicom終端將內(nèi)核映像zImage通過(guò)xmodem下載到開(kāi)發(fā)板上,注意內(nèi)核的分區(qū)應(yīng)大于zImage文件:

          vivi> load flash kernel x

          注意:在下載的時(shí)候,如果發(fā)生超時(shí)不能下載的情況,應(yīng)將xmodem_initial_timeout 和

          xmodem_timeout 設(shè)置足夠大.

          7. 在vivi模式下設(shè)置參數(shù):

          vivi> param set linux_cmd_line "console=ttyS0 root=/dev/nfs nfsroot=192.168.0.1:/friendly-arm/root ip=192.168.0.69:192.168.0.1:192.168.0.1:255.255.255.0:matrix4.arm9.net:eth0:off"

          保存

          vivi> param save

          8. 在下次啟動(dòng)的時(shí)候,可通過(guò)命令要重新mount 文件 /etc/exports中的內(nèi)容:

          exports [-aruv]

          -a 全部mount或umount文件/etc/exports中的內(nèi)容

          -r 重新mount文件/etc/exports中的共享內(nèi)容

          -u umount目錄

          -v 在export的時(shí)候,將詳細(xì)的信息輸出到屏幕上

          9. 關(guān)于exports文件中一些選項(xiàng)的含義:

          選項(xiàng) 說(shuō)明

          ro 該主機(jī)對(duì)該共享目錄有只讀權(quán)限

          rw 該主機(jī)對(duì)該共享目錄有讀寫(xiě)權(quán)限

          root_squash 客戶機(jī)用root用戶訪問(wèn)該共享文件夾時(shí),將root用戶映射成匿名用戶

          no_root_squash 客戶機(jī)用root訪問(wèn)該共享文件夾時(shí),不映射root用戶

          all_squash 客戶機(jī)上的任何用戶訪問(wèn)該共享目錄時(shí)都映射成匿名用戶

          anonuid 將客戶機(jī)上的用戶映射成指定的本地用戶ID的用戶

          anongid 將客戶機(jī)上的用戶映射成屬于指定的本地用戶組ID

          aync 資料同步寫(xiě)入到內(nèi)存與硬盤中

          async 資料會(huì)先暫存于內(nèi)存中,而非直接寫(xiě)入硬盤

          insecure 允許從這臺(tái)機(jī)器過(guò)來(lái)的非授權(quán)訪問(wèn)



          關(guān)鍵詞: ARMLinux運(yùn)行環(huán)

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();