uClinux-dist 使用教學:編譯 uClinux-dist 與常見問題

 uClinux-dist 使用教學:編譯 uClinux-dist 與常見問題

編譯 uClinux-dist

完成 kernel 與 filesystem 設定後,在命令模式執行編譯命令:

# make dep
# make

進行 kernel 與應用程式的跨平臺編譯。在編譯之前,請檢查跨平臺編譯工具組(如GNU armtools)是否已安裝,同時在環境變數 PATH 的搜尋路徑裡也要能找到相關的程式。

uClinux-dist 會幫我們製作 root filesystem 的映像檔(image file),最後編譯完成的 kernel 與 root filesystem 映像檔會存放於 image/ 目錄下。編譯成功後會得到 4 個主要的檔案如下:

˙ images/linux.text:kernel的.text節區。
˙ images/linux.data:kernel的.data節區。
˙ images/romfs.img:filesystem的映像檔。
˙ images/image.bin:以上 3 個檔案合併後的映像檔。

在這裡我將 uClinux-dist 設定成「GDB/ARMulator」,這樣我們之後就可以用 GDB/ARMulator 來玩這個 root filesystem 了。

常見問題

在許多無法成功編譯 uClinux-dist 的案例中,最常見到的問題有2個。

第一種情況為 GNU armtools 安裝不完整,導致在編譯的過程中出現錯誤,例如在 uClinux-dist 中選用 uClibc,但並未安裝 uClibc 套件,或是系統設定的問題,導致編譯器無法找到正確的程式庫位置。因此若在編譯 uClinux-dist 的過程出現錯誤,請先檢查 GNU armtools 的安裝是否完整,同時也記得安裝所選用的 C 程式庫。

第二種情況為套件的設定與 C 函式庫有衝突,例如有些套件不能使用 uClibc,必須改用 uC-libc 才能成功編譯。

--jollen

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值