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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 嵌入式根文件系統(tǒng)的移植和制作詳解

          嵌入式根文件系統(tǒng)的移植和制作詳解

          作者: 時間:2012-07-31 來源:網(wǎng)絡(luò) 收藏

          4.添加必要的庫,由于之前沒有選擇靜態(tài)編譯busybox,這里要拷貝相應(yīng)的庫

          cd lib

          cp –arf …/arm-linux/lib/* .

          5.根據(jù)自己需要添加應(yīng)用程序

          這里我們編寫一個簡單的應(yīng)用程序打印一句問候語,程序代碼如下:

          #include

          void main()

          {

          printf(“Hello Worldn”);

          }

          注意編譯時要使用arm-linux-gcc,由于之前我們把編譯器的庫全部進(jìn)行拷貝,可以直接動態(tài)編譯。生成的可執(zhí)行文件hello放入tmp文件夾。使用的命令:

          rm-linux-gcc hello.c –o hello

          cp –arf …/_install/tmp/

          6.打包

          mkcramfs _install rootfs

          四.燒寫過程

          我們采用的燒寫方法和燒寫內(nèi)核的方法一樣內(nèi)核的燒,我們采用tftp方式,用網(wǎng)線將目標(biāo)板和pc機(jī)連接起來,配置好目標(biāo)板的網(wǎng)絡(luò)參數(shù),主要是serverip、ipaddr。

          首先將rootfs下載到內(nèi)存中:#tftp 30008000 rootfs

          按照之前內(nèi)核的nandflash分區(qū)進(jìn)行燒寫,將內(nèi)存中的文件燒寫到flash中:

          #nand erase 500000 3b00000

          #nand write 30008000 500000 3b00000

          重啟uboot使其加載文件。

          可以看到內(nèi)核啟動,不在出現(xiàn)panic,這時會提示回車,回車后進(jìn)入命令行,我們可以使用一些linux的常用命令,如:ls、cd、vi等。

          如下圖所示:

          注意:我們這里使用的是PUTTY串口顯示軟件,如果用之前的DNW查看串口信息,會出現(xiàn)下面的錯誤:

          可以看到第一個目錄 [1;34mbin [0m

          會發(fā)現(xiàn)出現(xiàn)的信息除了bin目錄外還有其他的內(nèi)容,這并不是文件的問題只是DNW這款軟件并不支持這些表示色彩的附加信息,換成PUTTY可以正常顯示了。

          我們可以運(yùn)行一下我們自己的應(yīng)用程序hello:./hello

          可以看到打印信息Hello World如下圖所示:

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          linux相關(guān)文章:linux教程



          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(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); })();