ELDK 下載
ELDK(Embeded Linux Development Kit),嵌入式Linux開發完成開發套件。
安裝包下載地址
官方文檔
安裝過程中遇到的問題
這裏下載的是最新的安裝鏡像(eldk-5.6-armv5te.iso)
注:
5.3和5.4的版本在Ubuntu18.04和Fedora20上安裝不成功,一直報find: invalid mode ’+111‘
的錯誤,原因是這個在安裝toolchain的腳本里面使用了find $native_sysroot -type f -perm +111
,而該規則早在多年前就已經被棄用了(本人並沒有找到解決方案)
安裝ELDK
1 把下載到的鏡像掛載到一個目錄下
2 切換到掛載目錄下,查看安裝腳本
3 查看安裝鏡像支持的SDK和RFS images
4 開始安裝SDK
5 如果報錯(需要python)就安裝python :sudo apt-get upgrade && sudo apt-get install python
6 檢查安裝是否成功
工具鏈安裝在:`/opt/eldk-5.6/armv5te/sysroots/i686-eldk-linux/usr/bin/arm-linux-gnueabi/`
7 添加環境變量
cd ~
到根目錄下,編輯.bashrc
,在文件末尾添加export PATH=/opt/eldk-5.6/armv5te/sysroots/i686-eldk-linux/usr/bin/arm-linux-gnueabi:$PATH
如下圖
8 執行
source ./.bashrc讓修改生效
9 檢查安裝是否成功
編譯kernel
1 下載linux kernel
kernel下載地址
2 解壓並修改Malefile
修改Makefile的地195和196
行如下圖
3 拷貝驅動配置文件到當前目錄
cp arch/arm/configs/at91sam9g20ek_defconfig .
4 編譯驅動配置
注:
如果沒安裝過開發工具make和gcc就先安裝sudo apt-get install gcc
&&sudo apt-get install make
5 make menuconfig
注:
如果提示*** Unable to find the ncurses libraries
就安裝ncurses庫sudo apt-get install ncurses*
修改General set
指定交叉編譯,保存並退出
6 make uImage編譯內核
如果出現下面的錯誤就將kernel/timeconst.pl中第373行的defined()去掉
去掉以後變成if(!@val)
如果出現找不到U-Boot
就安裝uboot:sudo apt-get install u-boot-tools
7 make uImage
大功告成!!!!!!!!!!!!!!!!!