韦东山衔接班——1.2_uboot分析之Makefile结构分析
作者:GWD 时间:2019.8.21
一、分析Makefile的配置过程
(从输入配置命令到创建config.h头文件的过程):
1、顶层Makefile中执行100ask24x0_config后就相当于执行了D1882脚本,MKCONFIG是什么,在Makefile中查找一下,发现是源码中的mkconfig文件。
2、执行配置时候就相当于执行了下面脚本
3、接下来看一下mkconfig作用第6行给出了它的用法
第18行意思是若定义了BOARD_NAME就默认,若没用就执行命令中第一个参数
4、21行:打印这一串文字;28行:创建asm-arm连接文件,之所以这样做是
因为include文件夹下面还有好多种架构
5、接下来还是建立两个连接文件
6、>:表示新建 >>:表示追加,创建顶层Makefile包含的文件config.mk
7、我们配置的一些信息就在config.h头文件中
8、
二、UBOOT编译、连接过程
Make命令
1、config.mk就是在配置文件中建立的,里面有板卡的信息
2、CPU=ARM920T
3、后面越来越多,其实就是把目录下面的文件打包成一个库
4、看一下u-boot.bin的生成依赖于谁
在Makefile中
如果不想一一展开的话,就执行make命令,然后找到链接文件
前面不用管,进入根目录,链接脚本,然后需要一些库材料
接下来分析一下u-boot的链接脚本,在makefile中,指定了将uboot放在了这个位置。
且第一个文件是start.o文件,等下分析这个文件就可以了。
0x33f80000怎么来的呢?
三、Makefile分析结束,小结
韦东山衔接班——1.2_uboot分析之Makefile结构分析相关推荐
- 韦东山衔接班——1.4_u-boot分析之源码第二阶段
作者:GWD 时间:2019.8.22 目的:怎么读出内核和启动内核 1.UBOOT读写nand 2.环境变量初始化board.c 3. 4.接下来分析main_loop 注:很多#ifndef这类代 ...
- 韦东山衔接班——1.1_u-boot分析之编译体验
作者:GWD 时间:2019.8.21 第一节:u-boot分析之编译体验 一.Bootloader简介 1.BootLoader的引入: bootloader就是一小段程序,系统上电后开始执行,初始 ...
- 韦东山衔接班——4.4_构建根文件系统之构建根文件系统
文章地址: https://blog.csdn.net/gongweidi/article/details/100086289?biz_id=102&utm_term=%E9%9F%A6%E4 ...
- 韦东山衔接班——4.2_构建根文件系统之init进程分析
作者:GWD 时间:2019.8.25 Busybox的引入 根文件系统中有很多命令,命令就相当与一个应用程序,若一个一个编译很麻烦,linux中有一个busybox.当我们执行ls时候就相当于执行了 ...
- 韦东山衔接班——3.4_linux内核启动流程分析之内核启动
作者:GWD 时间:2018.8.25 一.汇编部分到第一个C之前准备 1.问:内核的工作 答 2.问:为什么有两个head.S 答:其中一个是自解压代码,运行时先解压内核 3.uboot中将参数写入 ...
- 韦东山衔接班——4.3_构建根文件系统之busybox
作者:GWD 时间:2019.8.26 注:Linux中交叉编译用CROSS开头 配置编译busybox 1.解压busybox 2.make menuconfig出现配置菜单 在readme或者in ...
- 韦东山第一二期衔接课程内容概要
韦东山第一二期衔接课程内容概要 0 使得一个裸板Jz2440能运行linux应用程序的过程 1 uboot启动内核总结 1.1 u-boot分析之编译体验 1.2 u-boot分析之Makefile结 ...
- 韦东山:嵌入式Linux学习路线图
我是1999年上的大学,物理专业.在大一时,我们班里普遍弥漫着对未来的不安,不知道学习了物理后出去能做什么.你当下的经历.当下的学习,在未来的一天肯定会影响到你.毕业后我们也各自找到了自己的职业:出国 ...
- 韦东山二期驱动视频-热拔插驱动——RK3399自制linux系统不支持HDMI热拔插问题分析
背景: 公司的板子,对于HDMI的显示器热拔插不支持,只能在插入HDMI时启动才能输出,而当开机之后,再插入HDMI显示器则无输出,不知道原因. 推测如下: 1.设备树的引脚配置有误,导致插入HDMI ...
最新文章
- [转] 理解RESTful架构
- Django博客系统(写博客页面展示)
- SpringBoot中使用rabbitmq
- Spring MVC漏洞学习总结
- 2017年4月11日
- 机器学习:分类器介绍
- java list 移除_java 中List删除实例详解
- Delphi字符串处理函数
- python调参工作都是干啥的_Python中Gradient Boosting Machine(GBM)调参方法详解
- linq判断集合中相同元素个数_iOS开发swift语法梳理:集合Set
- 图书管理销售系统需求分析报告,对性能的规定以及运行环境规定部分
- php全选帖子删除,用PHP实现全选全删
- [分类汇总] 同步与异步系列
- 禁用vsftpd欢迎语
- 不限流量的物联卡是否真存在
- Flutter拓展 一步一步教你安装Flutter(最火的移动框架)
- Linux学习之/etc/init.d/functions详解
- nyoj Splits the string 749
- 架构师架构蓝图《UML精粹》 UML Distilled读后感
- HackTheBox-Magic-Walkthrough