【Linux驱动开发IMX6ULL】交叉编译环境安装

IMX6ULL配置交叉编译环境

  • [1. 简单描述](#1. 简单描述)
  • [2. 相关资源(相关资料正点原子都有提供)](#2. 相关资源(相关资料正点原子都有提供))
  • [3. MobaXterm连接虚拟机](#3. MobaXterm连接虚拟机)
  • [4. 相关文件上传](#4. 相关文件上传)
  • [5. 交叉编译环境安装](#5. 交叉编译环境安装)
  • [6. 编译linux内核](#6. 编译linux内核)
  • [6. 编译uboot](#6. 编译uboot)

1. 简单描述

1、 本项目基于基于正点原子IMX6U-MINI开发板开发;

2. 相关资源(相关资料正点原子都有提供)

资源名称 说明
ubuntu-24.04.3-live-server-amd64.iso linux系统镜像(这个是更新的不是16.4)
linux-imx-4.1.15-2.1.0-e48931b1-v2.8.tar 正点原子linux内核源码
gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz 交叉编译工具链
fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0_20241230.sh 正点原子提供Poky交叉编译工具链脚本
VMware-workstation-17.6.2-24409262.exe WM虚拟机
sdk_root_dir.zip 相关驱动开发sdk(非必须)
MobaXterm ssh工具

3. MobaXterm连接虚拟机

  • 自己安装linux镜像!(略)
  • 使用ssh连接虚拟机需要的shell
bash 复制代码
sudo apt-get update
sudo apt-get install net-tools
ifconfig

4. 相关文件上传

bash 复制代码
mkdir toolchain
mkdir code
cd code
mkdir linux_core
  • toolchain文件夹下上传相关文件
gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0_20241230.sh
  • linux_core文件夹下上传相关文件
linux-imx-4.1.15-2.1.0-e48931b1-v2.8.tar
  • code文件夹下上传相关文件
sdk_root_dir.zip

5. 交叉编译环境安装

  • 安装Poky交叉编译工具链
bash 复制代码
chmod u+x fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0_20241230.sh
./fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0_20241230.sh
source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
arm-poky-linux-gnueabi-gcc --version
bash 复制代码
sudo apt-get update              // 先更新软列表(本地数据库)`在这里插入代码片`
sudo apt-get install lzop        // 安装lzop工具,用于生成压缩或解压镜像
sudo apt-get install libncurses* // 安装ncurese相关库,U-boot或者内核菜单显示时需要
  • 交叉编译器安装
bash 复制代码
sudo mkdir /usr/local/arm
sudo cp -rf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/
cd /usr/local/arm/
sudo tar -xvf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
  • 修改环境变量
bash 复制代码
sudo vim /etc/profile
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin

arm-linux-gnueabihf-gcc -v
sudo apt-get install lsb-core lib32stdc++6
sudo apt-get install lzop

sudo apt-get install libncurses*
sudo apt-get install make

6. 编译linux内核

bash 复制代码
cd /code/linux_core

tar -vxjf linux-imx-4.1.15-2.1.0-e48931b1-v2.8.tar.bz2
ls
./build.sh
c 复制代码
 extern YYLTYPE yylloc;

6. 编译uboot

bash 复制代码
tar -jxvf uboot-imx-2016.03-2.1.0-g0ae7e33-v1.7.tar.bz2
./build.sh
相关推荐
mounter62535 分钟前
破局与守正:eBPF 在 Linux 内存管理中的应用、演进与重构构想
linux·服务器·网络·mmu·ebpf·linux kernel
STDD44 分钟前
Linux Namespace:容器隔离的底层原理,PID、网络、挂载隔离实战
linux·运维·网络
Demon1_Coder1 小时前
智能体的自定义工具
java·linux·前端
gf13211111 小时前
【精确查找python脚本是否在运行】
linux·前端·python
Sunny Boy 0011 小时前
linux环境编译Pro*C 源文件(.pc文件)
linux·c语言·oracle
湉湉家的小虎子1 小时前
【科普贴】浅谈UFS接口——偏硬件解析
驱动开发·嵌入式硬件·fpga开发·硬件工程
用户937855808701 小时前
Linux 基础教程(二)】系统目录结构、用户与用户组管理(useradd/usermod/passwd/sudo)
linux
着迷不白2 小时前
实战一:用户、权限、组 案例
linux·运维
TheSumSt2 小时前
日常教程丨远程串流打游戏方法介绍(Parsec/Tailscale+Headscale+DERP+Sunshine&Moonlight)
linux·网络·经验分享·nginx·开源·玩游戏
暂未成功人士!2 小时前
ROS 核心知识点和常用的命令行详细总结
linux·操作系统·ros