如何在Ubuntu中利用repo和git地址下载获取imx6ull的BSP
01-设置git的用户名和邮箱
git config --global user.name "suwenhao"
git config --global user.email "2487872782@qq.com"
这里不设置的话后面在第5步的repo配置中还是会要求输入,而且以后进行相关操作都要输入,不妨现在就进行配置。
02-进入home/book目录


03-下载Git 仓库的管理工具repo
git clone https://e.coding.net/codebug8/repo.git


repo 是一个用于管理多个 Git 仓库的工具,它通常用于处理复杂的项目,比如 Android 源代码的管理。由于大型项目可能由多个子项目组成,每个子项目可能有自己的 Git 仓库,手动管理这些仓库会变得复杂。repo 工具通过提供一层额外的抽象,简化了对多个 Git 仓库的同步、更新和操作。
04-创建目录并进入目录
mkdir -p 100ask_imx6ull-sdk && cd 100ask_imx6ull-sdk

05-初始化repo配置
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
能不能详细解释下Ubuntu命令:
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
答:
这个命令是在 Ubuntu 系统中使用 repo 工具初始化一个仓库,具体是初始化一个多 Git 仓库的项目。命令的每个部分都有不同的功能,下面我将详细解释每个参数的意义。
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
1. ../repo/repo init
这个部分是运行 repo 命令。repo 是一个工具,用于管理多个 Git 仓库,它通常用于 Android 等大型项目。repo init 用来初始化一个新的 repo 工作区,或者将一个现有的 repo 工作区与特定的 manifest 文件进行关联。
../repo/repo:这里使用的是相对路径,指向repo工具的位置。repo工具可能位于当前目录的上级目录的repo子目录下。
2. -u https://gitee.com/weidongshan/manifests.git
这个参数指定了 repo 配置文件(即 manifest 文件)的 Git 仓库 URL。manifest 是一个 XML 文件,用于描述如何管理多个 Git 仓库,它包含了所有需要同步的 Git 仓库的信息,比如仓库的 URL 和所需的分支等。
https://gitee.com/weidongshan/manifests.git:这是manifest仓库的 URL。这里使用的是 Gitee 上的仓库,表示你要从这个 URL 上获取manifest文件。
3. -b linux-sdk
这个参数指定了要拉取的 branch(分支)。在 repo 中,每个 manifest 文件都可能有多个分支,通常这些分支与不同的开发版本、配置或平台相关。
linux-sdk:这个是你想要拉取的manifest分支。通常,linux-sdk可能代表与 Linux SDK(软件开发工具包)相关的配置。
4. -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml
这个参数指定了要使用的 manifest 文件。manifest 文件是一个 XML 文件,包含了多个 Git 仓库的 URL、版本和其他配置。你可以通过 -m 参数指定 manifest 文件的路径。
imx6ull/100ask_imx6ull_linux4.9.88_release.xml:这个是manifest文件的路径。imx6ull是可能与i.MX6ULL处理器相关的项目,100ask_imx6ull_linux4.9.88_release.xml则是特定版本的manifest文件,可能是针对i.MX6ULL处理器的 Linux 4.9.88 版本的配置。
5. --no-repo-verify
这个参数禁用了对 repo 工具的验证步骤。在 repo 初始化期间,默认会检查并验证 repo 工具的完整性或版本。通过添加 --no-repo-verify,可以跳过这个验证过程,通常用于在你确定 repo 工具没有问题的情况下加速初始化过程。
总结:
完整的命令 ../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify 做了以下几件事:
- 使用
repo工具初始化一个新的仓库工作区。 - 从
https://gitee.com/weidongshan/manifests.git获取manifest配置文件。 - 使用
linux-sdk分支的manifest文件。 - 选择
imx6ull/100ask_imx6ull_linux4.9.88_release.xml作为具体的manifest文件配置。 - 跳过对
repo工具的完整性验证,直接进行初始化。
这通常用于设置一个针对 i.MX6ULL 平台的 Linux 开发环境。
结合下面的图理解一下吧:


理解了以上的代码,以后就可以灵活改变参数来获得别的BSP了。
如果第0步的名字执行上面的命令时会要求填入你的名字和邮箱,如下图所示:
名字:suwenhao
邮箱 :2487872782@qq.com


接下来是否希望启用彩色输出?

Testing colorized output":这是在测试是否启用彩色输出(也就是命令行输出中使用颜色来区分不同的内容)。例如,repo status 或 repo diff 命令的输出可能会显示彩色,使得不同的文件状态或更改更加明显。
彩色输出通常用于增强可读性。例如,绿色可以表示文件没有问题(已提交或未修改),红色可能表示文件有冲突或错误,黄色表示警告,等等。
从上面来看,我的终端没有彩色输出的能力,那就选N呗。


从上面的图片来看,repo这样才被配置好了。
06-下载BSP包
执行下面的命令:
../repo/repo sync -j4
这句命令是用 repo 工具同步项目的源码,它的具体含义如下:
../repo/repo sync -j4
逐部分解释
-
../repo/repo:- 这是运行
repo工具的命令,路径指向repo可执行文件。../repo/repo表示repo工具位于当前目录的上一级目录的repo子目录中。
- 这是运行
-
sync:repo sync是用来同步代码的命令。- 它会根据
manifest文件中定义的仓库配置,从远程仓库(通常是多个 Git 仓库)拉取代码到本地,并将工作区的代码更新到指定的分支或标签。
-
-j4:-j参数表示同步时使用的并行线程数。-j4意味着同时使用 4 个线程并行下载代码,这可以提高下载速度,尤其是在项目包含许多子仓库时。- 根据你的网络带宽和系统资源,可以调整这个数字。通常,设置为系统 CPU 核心数量是一个较好的选择,比如
-j$(nproc)会自动根据可用 CPU 核心数选择线程数。
这句命令是用 repo 工具同步项目的源码,它的具体含义如下:
../repo/repo sync -j4
逐部分解释
-
../repo/repo:- 这是运行
repo工具的命令,路径指向repo可执行文件。../repo/repo表示repo工具位于当前目录的上一级目录的repo子目录中。
- 这是运行
-
sync:repo sync是用来同步代码的命令。- 它会根据
manifest文件中定义的仓库配置,从远程仓库(通常是多个 Git 仓库)拉取代码到本地,并将工作区的代码更新到指定的分支或标签。
-
-j4:-j参数表示同步时使用的并行线程数。-j4意味着同时使用 4 个线程并行下载代码,这可以提高下载速度,尤其是在项目包含许多子仓库时。- 根据你的网络带宽和系统资源,可以调整这个数字。通常,设置为系统 CPU 核心数量是一个较好的选择,比如
-j$(nproc)会自动根据可用 CPU 核心数选择线程数。
整体作用
该命令的作用是:
- 同步代码:从远程仓库下载和更新本地代码。
- 使用 4 个并行线程:加速同步过程。
在执行该命令之前,需要先运行 repo init 初始化工作区,因为 repo sync 会依赖 .repo/manifest.xml 文件中定义的仓库信息。
运行完之后如下图所示:


07-顺便把Linux-4.9.88的源码压缩传到Windows中,方便以后学习和工作之用
这个压缩操作在Ubuntu的图形界面右键就可以操作,这里就不给命令了。
传到百度网盘了,百度网盘下载链接:
https://pan.baidu.com/s/1lOmiubmL5vsyWtgkT08uZg?pwd=yh34
相关文章:
如何在Ubuntu中利用repo和git地址下载获取imx6ull的BSP
01-设置git的用户名和邮箱 git config --global user.name "suwenhao" git config --global user.email "2487872782qq.com"这里不设置的话后面在第5步的repo配置中还是会要求输入,而且以后进行相关操作都要输入,不妨现在就进行配置…...
Ruby On Rails 笔记5——常用验证下
3.Validation Options 3.1 :allow_nil 当验证值为nil时:allow_nil选项会跳过验证 class Coffee < ApplicationRecordvalidates :size, inclusion: { in: %w(small medium large),message: "%{value} is not a valid size" }, allow_nil: true end irb> Cof…...
JS听到了因果的回响
这是我学习JS的第11天了,,,我现在赶着周末学JS,然后还有二十多天就期末了呵呵呵。。。 图片切换模块 思路分析: 这是实现的代码,建议还是把不同的变量定义出来比较合适: //获取三个盒子// 小盒…...
【高中生讲机器学习】28. 集成学习之 Bagging 随机森林!
创建时间:2024-12-09 首发时间:2024-12-09 最后编辑时间:2024-12-09 作者:Geeker_LStar 嘿嘿,你好呀!我又来啦~~ 前面我们讲完了集成学习之 Boooooosting,这篇我们来看看集成学习的另一个分支…...
硬件设计 | Altium Designer软件PCB规则设置
基于Altium Designer(24.9.1)版本 嘉立创PCB工艺加工能力范围说明-嘉立创PCB打样专业工厂-线路板打样 规则参考-嘉立创 注意事项 1.每次设置完规则参数都要点击应用保存 2.每次创建PCB,都要设置好参数 3.可以设置默认规则,将…...
【Elasticsearch】实现用户行为分析
🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,…...
python字符串处理基础操作总结
1.去掉空格或者特殊符号 input_str.strip() #去掉所有空格 input_str.lstrip() #去掉左边空格 input_str.rstrip() #去掉右边空格 def print_hi():input_str 今天天气不错,风和日丽 out input_str.strip()print(input_str)print(out)if __name__ __main__:print…...
电子商务人工智能指南 6/6 - 人工智能生成的产品图像
介绍 81% 的零售业高管表示, AI 至少在其组织中发挥了中等至完全的作用。然而,78% 的受访零售业高管表示,很难跟上不断发展的 AI 格局。 近年来,电子商务团队加快了适应新客户偏好和创造卓越数字购物体验的需求。采用 AI 不再是一…...
【论文阅读】相似误差订正方法在风电短期风速预报中的应用研究
文章目录 概述:摘要1. 引言2. 相似误差订正算法(核心)3. 订正实验3.1 相似因子选取3.2 相似样本数试验3.3 时间窗时长实验 4. 订正结果分析4.1 评估指标对比4.2 风速曲线对比4.3 分风速段订正效果评估4.4 风速频率统计 5. 结论与讨论 概述&am…...
贪心算法 - 学习笔记 【C++】
2024-12-09 - 第 38 篇 贪心算法 - 学习笔记 作者(Author): 郑龙浩 / 仟濹(CSND账号名) 贪心算法 学习课程: https://www.bilibili.com/video/BV1f84y1i7mv/?spm_id_from333.337.search-card.all.click&vd_source2683707f584c21c57616cc6ce8454e2b 一、基本…...
精确的单向延迟测量:使用普通硬件和软件
论文标题:Precise One-way Delay Measurement with Common Hardware and Software(精确的单向延迟测量:使用普通硬件和软件) 作者信息:Maciej Muehleisen 和 Mazen Abdel Latif,来自Ericsson Research Eri…...
【MySQL 进阶之路】存储引擎和SQL优化技巧分析
1.InnoDB和MyISAM存储引擎的区别是什么?你在哪些场景下选择InnoDB? Innodb是高并发,支持事务跟行级锁,myisam不支持事务和行级锁,支持表级锁,不支持高并发。innodb底层是B树,适合范围查询&#…...
vue+elementUI从B页面回到A页面并且定位到A页面的el-tabs的某个页签
场景 做项目碰到一个需求,不能使用组件缓存keep-alive,但是需要跳转到B页面后,点击B页面的返回回到A页面的某个页签,灵机一动利用路由拦截去判断即将要跳转的页面后,在获取vm里对应的标签变量进行赋值,实现…...
{结对编程/大模型} 实践营项目案例 | 基于RAG搭建政策问答智能聊天助手
在构建政策问答智能聊天助手的过程中,我们采用了 RAG(Retrieval-Augmented Generation)技术。RAG 是一种结合了检索和生成的混合型自然语言处理技术,它通过检索相关信息来增强生成模型的上下文理解能力。RAG 的主要优点在于能够有…...
【Canvas与图标】乡土风金属铝边立方红黄底黑字图像处理图标
【成图】 120*120图标: 大小图: 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>金属铝边立方红黄底黑…...
【开源】A064—基于JAVA的民族婚纱预定系统的设计与实现
🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看项目链接获取⬇️,记得注明来意哦~🌹 赠送计算机毕业设计600个选题ex…...
C++实现一个经典计算器(逆波兰算法)附源码
1、本篇要实现的内容 最近,大家讨论计算器的实现比较热,今天我也来用C和Visual Studio实现一个计算器的小程序。这里使用逆波兰算法,能够根据当前用户输入的算式表达式字符串,计算出所要的结果,算式字符串可以包括加、…...
Python知识分享第二十二天-数据结构入门
数据结构 “”" 基础概念: 程序 数据结构 算法 数据结构 存储和组织数据的方式. 算法 解决问题的思维, 思路, 方式. 算法的特性:独立性: 算法 思维, 是解决问题的思路和方式, 不依赖语言.5大特性: 有输入, 有输出, 有穷性, 确定性, 可行性.问: 如何衡量算法的优劣?…...
【WRF理论第十三期】详细介绍 Registry 的作用、结构和内容
目录 1. Introduction:介绍 Registry 的作用和功能。2. Registry Contents:详细描述 Registry 的结构和内容,包括各个部分的条目类型。2.1. DIMSPEC ENTRIES(维度规格条目)2.2. STATE ENTRIES(状态变量条目…...
Android启动优化指南
文章目录 前言一、启动分类与优化目标1、冷启动1.1 优化思路1.2 延迟初始化与按需加载1.3 并行加载与异步执行1.4 资源优化与懒加载1.5 内存优化与垃圾回收控制 2. 温启动2.1 优化应用的生命周期管理2.2 数据缓存与懒加载2.3 延迟渲染与视图优化 3. 热启动3.1 保持应用的状态3.…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
React19源码系列之 事件插件系统
事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
C/C++ 中附加包含目录、附加库目录与附加依赖项详解
在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...
MySQL JOIN 表过多的优化思路
当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...
【Linux】Linux安装并配置RabbitMQ
目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的,需要先安…...
ArcGIS Pro+ArcGIS给你的地图加上北回归线!
今天来看ArcGIS Pro和ArcGIS中如何给制作的中国地图或者其他大范围地图加上北回归线。 我们将在ArcGIS Pro和ArcGIS中一同介绍。 1 ArcGIS Pro中设置北回归线 1、在ArcGIS Pro中初步设置好经纬格网等,设置经线、纬线都以10间隔显示。 2、需要插入背会归线…...
