【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
相关推荐
linan1018 小时前
android调用C++通用方式
linux·架构·智能硬件
imaol18 小时前
网络通信-网络编程
linux·udp
道尔柯南9 小时前
【Linux】线程概念与控制
linux
wuminyu9 小时前
Markword在紧凑对象头上的实现原理剖析
java·linux·c语言·jvm·c++
酸菜。10 小时前
DW_apb_wdt总结
linux
虚无的纽扣10 小时前
【Linux】一篇文章带你吃透进程控制:fork、wait、exit到底在做什么
linux·ubuntu
raindayinrain10 小时前
Linux 网络编程--套接字选项
linux·网络·套接字选项
金士顿10 小时前
ASP.NET Core BackgroundService 深度解析:设备后台任务到底应该怎么设计
linux·嵌入式·asp.net core·arm64
j7~10 小时前
【Linux网络加餐课】(篇八)网络版计算器(终篇):守护进程、标准 IO 重定向与部署打包
linux·运维·网络编程·tcp·守护进程·io重定向·部署打包
Escalating_xu10 小时前
【Linux 多线程】自旋锁:从 atomic_flag 原子操作到 pthread_spin_* 与高竞争优化
linux·系统架构