imx8的源码开发方式非yocto方式(六)——linux内核移植及编译

2023-11-08

1.进入NXP官方的github库,下载最新的linux内核,官方网址为:Release lf-5.15.71-2.2.0 · nxp-imx/linux-imx · GitHub;流程如下所示:

图1 github下载最新linux内核压缩包

 

2.拷贝内核压缩包到工作目录,并解压内核压缩包,流程如下图所示:

图2 拷贝、解压linux内核源码

 

3.进入linux内核目录,拷贝内核目录arch/arm64/configs子目录下的imx_v8_defconfig并重名为imx_imx8mmini_evk_defconfig,流程如下图所示:

图3 拷贝并重命名内核配置文件

 

4.进入解压后的内核根目录,编写编译脚本build_imx8mmini.sh,保存脚本,给编译脚本添加可执行权限,并运行编译脚本,设置linux内核支持ram块设备,否则不能进行ramdisk根文件系统的挂载,如下图所示。

图4 编译脚本build_imx8mmini.sh

 

> Device Drivers

        > Block devices

                <*>RAM block device support                                

                 (16) Default number of RAM disks (NEW)                       

                 (262144) Default RAM disk size (kbytes)

图5 添加ram块设备的支持

 

5.保存为imx_imx8mmini_evk_defconfig配置文件,然后退出配置界面。

图6 保存为imx_imx8mmini_evk_defconfig配置文件

 

图7 保存后的配置文件

 

6.进入解压后的内核根目录,修改编译脚本build_imx8mmini.sh,然后保存编译脚本,运行编译脚本进行内核的编译如下所示。

图8 修改编译脚本build_imx8mmini.sh

 

7.编译完成后,在linux内核目录的arch/arm64/boot子目录下生成Image的内核镜像文件。

图9 生成内核镜像文件Image

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

imx8的源码开发方式非yocto方式(六)——linux内核移植及编译 的相关文章

  • 为什么 Linux 原始套接字的 RX 环大小限制为 4GB?

    背景 我试图mmap 我的原始套接字的 RX 环形缓冲区64 bitLinux 应用程序 我的环由 4096 个块组成 每个块大小为 1MB 总共 4GB 请注意 每个 1MB 块中可以有许多帧 如果您好奇 请参阅此文档了解背景信息 htt
  • Linux 中 m 标志和 o 标志将存储在哪里

    我想知道最近收到的路由器通告的 m 标志和 o 标志的值 从内核源代码中我知道存储了 m 标志和 o 标志 Remember the managed otherconf flags from most recently received R
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String
  • ALSA:snd_pcm_writei 调用时缓冲区不足

    当运行我最近从灰烬中带回来的旧程序时 我遇到了缓冲区不足的情况 该程序将原始声音文件完全加载到内存中 2100 字节长 525 帧 并准备 ALSA 进行输出 44 1khz 2 通道 有符号 16 位 if err snd pcm set
  • 在 C 中使用单个消息队列是否可以实现双向通信

    我希望服务器向客户端发送一些消息 并让客户端确认它 我被分配了这个任务 我可以在 C linux 中使用单个消息队列来完成它还是我需要创建两个 谢谢 是的 可以使用 sysV 消息队列来做到这一点 从您之前的问题来看 您正在使用该队列 您可
  • 调用 printf 系统子例程在汇编代码中输出整数错误[重复]

    这个问题在这里已经有答案了 来回 在windows7控制台窗口中运行gcc s2 asm 然后生成一个exe文件 运行a exe 然后崩溃 为什么 s2 asm 代码由以下源代码生成 int m m 1 iprint m s2 asm请参考
  • 在 .gitconfig 中隐藏 GitHub 令牌

    我想将所有点文件存储在 GitHub 上 包括 gitconfig 这需要我将 GitHub 令牌隐藏在 gitconfig 中 为此 我有一个 gitconfig hidden token 文件 这是我打算编辑并放在隐藏令牌的 git 下
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • Bash - 在与当前终端分开的另一个终端中启动命令的新实例

    我有一个简单的 bash 脚本 test sh 设置如下 bin bash args if args 0 check capture then watch n 1 ls lag home user capture0 watch n 1 ls
  • 如何使用waf构建共享库?

    我想使用构建一个共享库waf http code google com p waf 因为它看起来比 GNU 自动工具更容易 更简洁 到目前为止 我实际上有几个与我开始编写的 wscript 有关的问题 VERSION 0 0 1 APPNA
  • 绕过 dev/urandom|random 进行测试

    我想编写一个功能测试用例 用已知的随机数值来测试程序 我已经在单元测试期间用模拟对其进行了测试 但我也希望用于功能测试 当然不是全部 最简单的方法是什么 dev urandom仅覆盖一个进程 有没有办法做类似的事情chroot对于单个文件并
  • 如何在 *nix 中登录时运行脚本?

    我知道我曾经知道如何做到这一点 但是 如何在 unix 中登录时运行脚本 bash 可以 From 维基百科 Bash http en wikipedia org wiki Bash 28Unix shell 29 当 Bash 启动时 它
  • Linux/POSIX:为什么 fork() 不分叉*所有*线程

    众所周知 POSIX下创建新进程的默认方式是使用fork 在 Linux 下 这在内部映射到clone 我想知道的是 众所周知 当一个人打电话时fork 子进程是用单个线程创建的 调用的线程fork cf https linux die n
  • 这种文件锁定方法可以接受吗?

    我们有 10 个 Linux 机器 每周必须运行 100 个不同的任务 这些计算机主要在我们晚上在家时执行这些任务 我的一位同事正在开发一个项目 通过使用 Python 自动启动任务来优化运行时间 他的程序将读取任务列表 抓取一个打开的任务
  • 检查已安装的软件包,如果没有找到则安装

    我需要检查已安装的软件包 如果未安装则安装它们 RHEL CentOS Fedora 示例 rpm qa grep glibc static glibc static 2 12 1 80 el6 3 5 i686 如何在 BASH 中进行检
  • x86-64 AMD 上 CALL 指令的操作数生成

    以下是示例程序 objdump 的输出 080483b4
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • ansible unarchive 模块如何查找 tar 二进制文件?

    我正在尝试执行一个 ansible 剧本 该剧本的任务是利用unarchive模块 因为我是在 OSX 上执行此操作 所以我需要使用它gnu tar 而不是bsd tar通常与 OSX 一起提供 因为BSD tar 不受官方支持 https
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser

随机推荐

  • JVM性能优化之Tomcat服务器参数配置优化

    前言 tomcat 服务器在JavaEE项目中使用率非常高 所以在生产环境对tomcat的优化也变得非常重要了 对于tomcat的优化 主要是从2个方面入手 一是tomcat本身的配置 另一个是tomcat所运行的Jvm虚拟机的调优 优化传
  • Windows XP环境下IPSec 隧道的配置

    前言 这是这学期防火墙课程的一个实验 觉得挺有意义 所以记录在博客里 一 实验目的 本实验主要验证IP通信在建立IPSec隧道前后的变化 为了简化实验过程 这里只对ICMP进行加密 但在配置的过程中即可发现 其他IP协议要进行同样的加密也是
  • 【轩说AI】生成模型(1)——自编码器AE+变分自编码器VAE

    文章目录 生成模型 从概率分布的角度去理解 生成 一张图片 生成宝可梦 生成系列图片 自动编码器Auto Encoder AE的模型及其存在的问题 AE中的高斯混合模型 AE的训练情况 举例理解从AE到VAE 变分自动编码器Variatio
  • 经典排序之快速排序

    一 概述 快速排序是Hoare于1962年提出的一种二叉树结构的交换排序方法 其基本思想为 任取待排序元素序列中的某元素作为基准值 按照该排序码将待排序集合分割成两子序列 左子序列中所有元素均小于基准值 右子序列中所有元素均大于基准值 然后
  • 剑指offer 学习笔记 树中两个节点的最低公共祖先

    面试题68 树中两个节点的最低公共祖先 可以先得到从根节点到这两个节点的路径 之后找出最后一个公共节点 代码中的树为 include
  • 学习笔记-Matlab算法篇-现代优化算法

    现代优化算法 01遗传算法 定义 遗传算法 Genetic Algorithms 简称 GA 是一种基于自然选择原理和自然遗传机制的搜索 寻优 算法 它是模拟自然界中的生命进化机制 在人工系统中实现特定目标的优化 遗传算法的实质是通过群体搜
  • svn访问版本库时一直提示: please wait while the repository browser is initializing

    最近不知道做了什么操作 原来正常的SVN Check In Out都无法正常操作 正常Check In的动作 几秒钟就会操作完成 但是我却等了好久好久 然后提示Connection timed out 一开始怀疑是SVN Client的版本
  • 谷歌广告(Google ads)如何投放?新手必看的超全教程

    Google是公认的全球最大的搜索引擎 同时 Google还通过旗下的 YouTube Gmail Google Play Android等产品 汇集了海量的海外用户 对于跨境出海商家来说 谷歌广告是提高销售额 提高产品流量 拓展全球市场的
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别

    文章目录 前言 变量对比 0 i i var var var 总结 前言 最近使用批处理程序处理文件的时候 发现这 bat中的变量形式真是 变化多端 有时候加1个百分号 有时候加2个百分号 还有的时候加感叹号 真是让初学者一头雾水 于是查询
  • Spring核心方法 refresh 解析

    refresh 方法简述 refresh 是 Spring 最核心的方法 没有之一 上帝就是用这个方法创造了 Spring 的世界 这是一个同步方法 用synchronized关键字来实现的 该方法包含以下12个核心方法 步骤 prepar
  • **关于使用adb时遇到mount:read only file system 或者是adb remount:read only file system时的处理方法如下

    关于使用adb时遇到mount read only file system 或者是adb remount read only file system时的处理方法如下 本文所述的方法适用于无法用mout命令修改 system只读权限 ro 的
  • 元素定位之css selector(选择器定位)

    语法 find element by css selector css选择器定位策略 或者 find elements by css selector css选择器定位策略 1 css可以通过元素的 id class 标签 这三个常规属性直
  • TensorRT加速Deformable Detr实践

    TensorRT加速Deformable Detr实践 自TensorRT 8 4 1 5发布以来 惊喜的发现TensorRT官方实现了可变形transformer的插件 这让TensorRT便捷实现加速Deformable Detr乃至今
  • 在python控制台输入变量,判断奇偶

    原题 从python控制台输入变量x 然后判断这个x是奇数还是偶数 并且需要将这一过程放到循环中 这样可以不断输入要判断的数值 直到输入end退出循环 需要用到的知识点 1 在控制台输入 2 while语句 3 if语句及if语句的嵌套使用
  • 类-1246

    1246 设计回文判断类 题目描述 分析下面所给自定义类 myStrCla 以及随后给出的主函数及该程序执行后的屏幕显示结果 而后在类体外给出 补充 其三个成员函数的具体实现 用于完成所设定的自定义功能 以使程序执行后的屏幕显示结果为 ab
  • android平台下OpenGL ES 3.0着色语言基础知识(上)

    OpenGL ES 3 0学习实践 android平台下OpenGL ES 3 0从零开始 android平台下OpenGL ES 3 0绘制纯色背景 android平台下OpenGL ES 3 0绘制圆点 直线和三角形 android平台
  • CSS3中的媒体查询知识点整理

    媒体查询 文章目录 媒体查询 概念 逻辑运算符 媒体类型 mediaType 媒体功能 mediafeature 举例 单个使用 用min width时 小的在上面 大的在下面 用max width时 大的在上面 小的在下面 同时使用 mi
  • QT:QProgressBar 如何在进度条上显示自定义文字

    QT QProgressBar显示文本 Qt如何在进度条上显示自定义文字 QT QProgressBar显示文本 https www thinbug com q 31703978 参考方案1 当您想在进度条上添加文本时 您需要将文本默认对齐
  • hexo主题的github地址(clone)

    文章目录 主题地址 indigo next yelee clexy clean blog cyanstyle freemind icarus lite 切换主题 主题地址 主题示例演示 主题非常多 仅列一些自己比较喜欢也常用的几个地址 in
  • imx8的源码开发方式非yocto方式(六)——linux内核移植及编译

    1 进入NXP官方的github库 下载最新的linux内核 官方网址为 Release lf 5 15 71 2 2 0 nxp imx linux imx GitHub 流程如下所示 图1 github下载最新linux内核压缩包 2