U-Boot Makefile编译常用命令

news/2024/11/27 8:41:51/

U-Boot Makefile编译常用命令

对于U-Boot常常需要用Makefile编译,而这又需要对U-Boot顶层Makefile进行分析,虽然能深度了解常用命令的意义。但对于使用而言,意义不大。因此,本文章整理了一些常用的命令,并给出简单解释,使其快速记住上手。

参考手册:[正点原子]I.MX6U嵌入式Linux驱动开发指南V1.8\color{red}{[正点原子]I.MX6U嵌入式Linux驱动开发指南V1.8}[正点原子]I.MX6U嵌入式Linux驱动开发指南V1.8

归类 变量/指令 意义
版本号VERION\color{green}{VERION }VERION =xxx主版本号
版本号PATCHLEVEL\color{green}{PATCHLEVEL}PATCHLEVEL=xxx补丁版本号
MAKEFLAGS 变量(MAKE)−Csubdir\color{green}{(MAKE) -C subdir}(MAKE)Csubdir-C指定子目录 $(CURDIR)表示当前目录
命令输出V=1\color{green}{V=1}V=1输出完整命令
静默输出V=0\color{green}{V=0 }V=0或者空输出短命令
静默输出make−s\color{red}{make -s }makes输出短命令
设置输出目录makeO=out\color{red}{make O=out }makeO=out设置编译结果输出目录,out表示目录
代码检查makeC=1\color{red}{make C=1 }makeC=1检查需要重新编译的文件
代码检查makeC=2\color{red}{make C=2 }makeC=2检查所有源文件
模块编译makeM=dir或者makeSUBDIRS=dir\color{red}{make M=dir }或者{make SUBDIRS=dir }makeM=dir或者makeSUBDIRS=dir单独编译dir目录下文件
获取主机架构HOSTARCH\color{green}{HOSTARCH}HOSTARCH获取主机架构
获取主机系统HOSTOS\color{green} {HOSTOS}HOSTOS获取主机系统
设置目标架构ARCH?=arm\color{green} {ARCH ?= arm}ARCH?=arm makeARCH=arm\color{red} {make ARCH=arm}makeARCH=arm设置ARM架构
设置交叉编译器CROSS_COMPILE?=arm−linuxgnueabihf−\color{green} { CROSS\_COMPILE ?= arm-linuxgnueabihf-}CROSS_COMPILE?=armlinuxgnueabihf makeCROSS_COMPILE=arm−linuxgnueabihf−\color{red} {make CROSS\_COMPILE= arm-linuxgnueabihf-}makeCROSS_COMPILE=armlinuxgnueabihf设置交叉编译器
配置文件KCONFIG?=.config\color{green}{KCONFIG ?= .config}KCONFIG?=.config.config为实时有效配置,xxx_deconfig为初始配置

注:

  • 绿色\color{green}{绿色}绿色 表示在Makefile里面改写
  • 红色\color{red}{红色}红色 表示在终端输入

make\color{green}{make}make xxx_defconfig\color{green}{xxx\_defconfig }xxx_defconfig配置uboot,该命令运行过程如下图所示:
在这里插入图片描述
make\color{green}{make}make用于编译 uboot,该命令用于生成 u-boot.bin 文件和其他的一些与 uboot 有关的文件,如 u-boot.imx 等。
在这里插入图片描述


http://www.ppmy.cn/news/35044.html

相关文章

PCIe 总线架构的 4 路 10G 光纤通道适配器

PCIE730 是一款基于 PCI Express 总线架构的 4 路 10G 光纤通道适配器,板卡具有 4 通道 SFP万兆光纤接口,x8 PCIE 主机接口, 具有 1 组 64 位 DDR3 SDRAM 作为高速缓存,可以实现 4 通道光纤 网络数据的高速采集、实时记录和宽带回…

[Netty源码] 服务端启动过程 (二)

文章目录1.ServerBootstrap2.服务端启动过程3.具体步骤分析3.1 创建服务端Channel3.2 初始化服务端Channel3.3 注册selector3.4 端口绑定1.ServerBootstrap ServerBootstrap引导服务端启动流程: //主EventLoopGroup NioEventLoopGroup master new NioEventLoopGroup(); //从E…

【黑客游戏】Me and My Girlfriend - 女友究竟有什么不可告人的秘密通过技术层层发现

【黑客游戏】Me and My Girlfriend - 女友究竟有什么不可告人的秘密通过技术层层发现备注一、故事背景二、开始行动1.发现目标2.web渗透3.权限提升备注 2023/03/25 星期六 最近准备开一个新的模块,写一些渗透靶场的题解,由于这些题目一般比较有趣有丰富…

在CentOS上安装Docker引擎

1,先决条件#### 1-1操作系统要求1-2 卸载旧版本 2,安装方法2-1使用存储库安装设置存储库安装 Docker 引擎 本文永久更新地址: 官方地址:https://docs.docker.com/engine/install/centos/ 1,先决条件 #### 1-1操作系统要求 要安装 Docker Engine,您需要…

“两会”网络安全相关建议提案回顾

作为新一年的政治、经济、社会等发展的“风向标”,今年“两会”在3月13日顺利闭幕。在今年“两会”期间,多位人大代表也纷纷围绕网络安全、数据安全的未来发展做了提案和建议。 01 “两会”网络安全相关建议和提案回顾 建议统筹智能网联汽车数据收集与共…

动态内存管理函数malloc、calloc、realloc、free函数,以及练习,程序的内存开辟,柔性数组

文章目录为什么存在动态内存的分配动态内存函数的介绍介绍malloc函数的使用介绍calloc函数的使用介绍realloc函数的使用常见的动态内存错误对NULL指针的解引用操作对动态开辟空间的越界访问对非动态开辟内存使用free释放使用free释放一块动态开辟内存的一部分对同一块动态内存多…

【操作系统笔记02】操作系统之多线程模型、处理机调度及其相关调度算法

这篇文章,主要介绍操作系统之多线程模型、处理机调度及其相关调度算法。 目录 一、多线程和处理机调度 1.1、什么是线程 1.2、线程的实现方式 (

html+css制作

<!DOCTYPE html> <html><head><meta charset"utf-8"><title>校园官网</title><style type"text/css">*{padding: 0;margin: 0;}#logo{width:30%;float: left;}.nav{width: 100%;height: 100px;background-color…