| 1 | 综合篇 | 点我 |
|---|---|---|
| 2 | uboot移植 | 点我 |
| 3 | uboot lcd驱动 | 点我 |
| 4 | kernel移植 | 点我 |
| 5 | kernel lcd驱动 | 点我 |
| 6 | 摄像头驱动 | 点我 |
| 7 | ubuntu base移植 | 点我 |
| 8 | 挂载网络文件系统 | 点我 |
| 9 | qt移植 | 点我 |
| 10 | 搭建qt交叉编译 | 点我 |
| 11 | wifi移植 | 点我 |
首先下载好NXP官方的 linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2源码,复制到ubuntu中并解压
tar -jxvf linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2
解压完成后进入linux-imx-rel_imx_4.1.15_2.1.0_ga文件夹,通过ls查看有哪些文件

1 在 Linux 中添加自己的开发板
1.1 添加开发板默认配置文件
将 arch/arm/configs 目 录 下 的 imx_v7_mfg_defconfig 重 新 复 制 一 份 , 命 名 为imx_user_emmc_defconfig
cd arch/arm/configs/
cp imx_v7_defconfig imx_user_emmc_defconfig
1.2 添加开发板对应的设备树文件
添加设备树文件,进入目录 arch/arm/boot/dts 中,复制一份 imx6ull-14x14-evk.dts,然后将其重命名为 imx6ull-user-emmc.dts
cd arch/arm/boot/dts/
cp imx6ull-14x14-evk.dts imx6ull-user-emmc.dts
.dts 是设备树源码文件,编译 Linux 的时候会将其编译为.dtb 文件。imx6ull-user-emmc.dts创 建 好 以 后 我 们 还 需 要 修 改 文 件 arch/arm/boot/dts/Makefile , 找 到 “ dtb-$(CONFIG_SOC_IMX6ULL)”配置项,在此配置项中加入“imx6ull-user-emmc.dtb”

第 422 行为“imx6ull-user-emmc.dtb”,这样编译 Linux 的时候就可以从 imx6ull-user-mmc.dts 编译出 imx6ull-user-emmc.dtb 文件了。
1.3 编译测试
我 们 可 以 创 建 一 个 编 译 脚 本 ,imx6ull_user_emmc.sh,脚本内容如下:
#!/bin/bash
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- imx_user_emmc_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8
添加可执行权限并编译内核:
chmod 777 imx6ull_user_emmc.sh //给予可执行权限
./imx6ull_user_emmc.sh //执行 shell 脚本编译内核

本文档详细介绍了在NXP平台上进行Linux系统移植的步骤,包括uboot、kernel、lcd驱动、摄像头驱动、ubuntu base、网络文件系统、qt、交叉编译环境和wifi的移植。首先,下载并解压NXP官方的Linux源码,接着添加开发板配置文件和设备树,然后编译内核。通过创建并执行编译脚本完成内核的定制与编译。整个流程覆盖了嵌入式Linux开发的关键环节。
877

被折叠的 条评论
为什么被折叠?



