全志D1s软件入门之Tina Linux编译教程

编译 Tina Linux

在搭建好编译环境并下载好源码后,即可对源码进行编译,编译打包好后,即可将打包好的固件烧写到设备中去。本文主要介绍编译和烧写的方法。

Tina Linux 编译

Tina Linux 的编译大致分为以下流程:

(1) source build/envsetup.sh  # 获取 Tina 环境变量
(2) lunch                     # 载入方案列表,选择方案
(3) mp                        # 编译打包

(1)获取 Tina 环境变量

source build/envsetup.sh

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

(2)载入方案列表,选择方案

之后使用 lunch 命令载入方案列表,可以看到 方案 5 对应的是 d1s_nezha 板子,也正是 D1s Nezha 开发板。输入 5 回车即可。如果是其他板子,也可以输入对应板子的序号选择方案。

lunch

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

之后 SDK 会自动根据你所选择的方案解压编译工具链,创建环境,耐心等待下即可。

(3)编译打包

Tina Linux 里可以使用 make 命令进行编译,pack 命令打包。

make

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

当然,也可以在 make 命令后面增加参数,支持多线程编译,例如:

make -j128       # 以 128 线程编译 SDK

不过有些时候因为软件包的依赖关系,多线程编译可能会导致编译失败。如果出现编译失败可以使用 make -j1 指定单线程编译解决依赖问题。有些时候软件包也可能不完全适配芯片与开发板,这时候也会报错,同样也需要 make -j1 查看实际的错误。

编译完成之后,使用 pack 命令打包。

pack

最后,如果编译完成,则会输出以下内容,代表编译打包完成,可以在/out/d1s-nezha/tina_d1s-nezha_uart0.img 目录下找到打包完成的固件。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

进阶编译操作

Tina Linux 提供了大量方便使用的快捷跳转命令。方便开发使用。

快捷命令

命令命令有效目录作用
maketina根目录编译整个sdk
make menuconfigtina根目录启动软件包配置界面
make kernel_menuconfigtina根目录启动内核配置界面
croottina下任意目录快速切换到tina根目录
cconfigstina下任意目录快速切换到方案的bsp配置目录
cplattina下任意目录快速切换到方案配置目录
ctargettina下任意目录快速切换到openWrt软件包编译产物目录
crootfstina下任意目录快速切换到openWrt rootfs目录
copsrctina下任意目录快速切换到openWrt目录
couttina下任意目录快速切换到方案的输出目录
cboottina下任意目录快速切换到bootloader目录
cgreptina下任意目录在c/c++/h文件中查找字符串
mm [-B]软件包目录编译软件包,-B指编译前先clean
packtina根目录打包固件
mtina下任意目录make的快捷命令,编译整个sdk
ptina下任意目录pack的快捷命令,打包固件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/680496.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

php7.3安装phalcon扩展

php7安装3.4版本的phalcon扩展 适用于Centos6.x和Centos7.x系统,php使用7.1版本,wlnmp一键包已支持该扩展 phalcon扩展包地址:https://github.com/phalcon/cphalcon (git clone 有可能连接不上) 1、安装所需依赖&a…

《深入浅出存储引擎》不同数据库背后的数据存储方案

在大数据和AI时代,数据库成为各类应用不可或缺的重要组成部分。而数据库中的数据依赖存储引擎进行管理,包括数据的存储、查询、更新和删除等。因此,在设计系统时,选择正确的数据库存储引擎方案变得尤为重要。这篇文章将以关系型、…

Intersection Observer API---交叉观察器 API

Intersection Observer API 交叉观察器 API(Intersection Observer API)提供了一种异步检测目标元素与祖先元素或顶级文档的视口相交情况变化的方法,例如,可以观察判断一个div(有大小的)盒子在是否出现在窗口&#xff…

贰[2],VisionMaster/.NetCore的WPF应用程序调用控件

1,环境 VisionMaster4.2 VisualStudio2022 WPF/.Net6.0 2,记录原因 .NetFrameWork的WPF应用程序调用添加例程.NetFrameWork的Winform应用程序相应的库,不会出现报错,界面也能正常显示操作,但是.NetCore的程序却总是报错。 2.1,.NetFrameWork的WPF应用程序 注:但是.…

uniadmin引入iconfont报错

当在uniadmin中引入iconfont后,出现错误: [plugin:vite:css] [postcss] Cannot find module ‘E:/UniAdmin/uniAdmin/static/fonts/iconfont.woff2?t1673083050786’ from ‘E:\UniAdmin\uniAdmin\static\fonts\iconfont.css’ 这是需要更改为绝对路径…

线性代数|机器学习-P2 A的列向量空间

文章目录 1. Ax矩阵的形式2. ACR 矩阵分解2.1 rank1 矩阵分解2.2 rank2 矩阵分解2.3 ACMR,求M 3. Ax 向量 1. Ax矩阵的形式 假设我们有如下矩阵A: A x [ 2 1 3 3 1 4 5 7 12 ] [ x 1 x 2 x 3 ] \begin{equation} Ax\begin{bmatrix} 2&1&3\\\\ 3&1&am…

Java 还能不能继续搞了?

金三银四招聘季已落幕,虽说行情不是很乐观,但真正的强者从不抱怨。 在此期间,我收到众多小伙伴的宝贵反馈,整理出132道面试题,从基础到高级,有八股文,也有对某个知识点的深度解析。包括以下几部…

5 种技术,可用于系统中的大数据模型,而不会使系统崩塌

文章目录 一、说明二、第一种:批量大小三、第二种:主动学习四、第三种:增加代币数量五、第四种: 稀疏激活六、第五种:过滤器和更简单的模型后记 一、说明 以下是本文重要观点的摘要。阅读它以获取更多详细信息/获取原…

自动装车系统车辆定位-激光雷达解决方案

在自动装车系统中,激光雷达为车辆定位提供了一种高效且精确的解决方案。以下是关于这一解决方案的详细分析: 一、解决方案概述 激光雷达解决方案在自动装车系统中,通过发射激光束并接收目标反射回来的信号,来探测车辆的位置、状…

新手如何正确使用代理IP,一篇文章学会,包含实战案例

前言 一、代理IP1.1 什么是代理IP?1.2 代理ip分类1.3 代理IP的作用和优势 二、更换代理IP的方法2.1 重启路由器或光猫2.2 用拨号 vps 重拨更换动态IP代理。2.3 使用浏览器更换IP 三、IPIDEA代理的优势四、提取代理IP4.1 提取步骤4.2 浏览器使用代理IP 五、使用代理I…

【Redis数据库百万字详解】数据持久化

文章目录 一、持久化1.1、什么是持久化1.2、持久化方式1.3、RDB优缺点1.4、AOF优缺点 二、RDB持久化触发机制2.1、手动触发2.2、自动触发 三、RDB持久化配置3.1、配置文件3.2、配置查询/设置3.3、禁用持久化3.4、RDB文件恢复 四、RDB持久化案例4.1、手动持久化4.2、自动持久化案…

Hive3.1.2分区与排序(内置函数)

Hive3.1.2分区与排序(内置函数) 1、Hive分区(十分重要!!) 分区的目的:避免全表扫描,加快查询速度! 在大数据中,最常见的一种思想就是分治,我们可以把大的文件切割划分成…

【二进制部署k8s-1.29.4】十三、metrics-server的安装部署

文章目录 简介 一.metrics-server的安装 简介 本章节主要讲解metrics-server的安装,metrics-server主要是用于采集k8s中节点和pod的内存和cpu指标,在观察几点和pod的实时资源使用情况还是比较有用的,如果需要记录历史信息,建议采用…

层出不穷的大模型产品,你怎么选?

一:简介 关于大模型AIGC产品的选择与发展趋势,目前许多互联网公司都在不断投入资源和精力开发基于大规模模型的人工智能产品。这些产品通常能够处理更复杂的任务并提供更高质量的服务,如智能问答、自然语言处理、图像识别等。在产品选择上&am…

Linux下查看进程和端口信息

1, 根据进程名(这里是模糊查询)查看进程信息,以查看nginx进程名为例,查看所对应的进程id为19013(或者使用: ps -aux | grep nginx查看占用内存等信息) ps -ef | grep nginx 2, 根据进程id查看进程占用端口,查看对应端口为8080&…

git clone 文件名中文、有冒号等问题 fatal: repository ‘***/r/鏍″洯鏅烘収椋熷爞/.git/‘ not found

记录一个git问题,比较有意思,也比较难找。 背景 首先把代码拉下来,发现给我报错。 怀疑 刚开始以为是仓库地址变了,但是发现仓库地址并没有变过。 交流 然后寻找解决方案。因为同事也遇到过,同事交了我一招&…

docker-compose教程

1. docker-compose是什么? 1. 1 简介 compose、machine 和 swarm 是docker 原生提供的三大编排工具。 简称docker三剑客。Compose 项目是 Docker 官方的开源项目,定义和运行多个 Docker 容器的应用(Defining and running multi-container Do…

男士内裤一般几个月换一个?男性内裤的选购方法分享!

男士内裤,作为日常穿着的重要衣物,往往被许多男性朋友所忽视。然而,一款合适的内裤不仅能够提升穿着的舒适度,还能在一定程度上维护健康。因此,对男士内裤的选择,我们应当给予足够的重视。 众多男性朋友们…

C++——从C语言快速入门

目录 一、数组 1、声明数组 2、初始化数组 3、访问数组元素 4、示例 5、注意事项 6、数组小练习 计算器支持加减乘除 数组找最大值 二、指针 三、字符串 string 类型 一、数组 在 C 中,数组是一种存储固定大小的相同类型元素的序列。数组的所有元素都存…

半导体人才荒,何解?

过去两年,全球半导体行业陷入寒冬,砍单、裁员、减产、倒闭等各种负面消息接踵而至。 2024年来,在全球半导体产业经历周期性下滑后,逐渐迎来复苏,市场景气向好。据WSTS预测,2024年全球半导体市场将同比增长…