Ubuntu18.04 安装ELDK交叉编译Linux kernel
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

大功告成!!!!!!!!!!!!!!!!!
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
