[嵌入式Linux]-常见编译框架与软件包组成

news2024/11/15 10:55:30

嵌入式常见编译框架与软件包组成

1.嵌入式开发准备工作

主芯片资料包括:

  • 主芯片资料
    • 主芯片开发参考手册;
    • 主芯片数据手册;
    • 主芯片规格书;
  • 硬件参考
    • 主芯片硬件设计参考资料;
    • 主芯片配套公板硬件工程;
  • 软件资料
    • BSP;
    • SDK;
    • 开发指南;

开发所需最少资源:

  • 开发板资料:

    • 开发板使用手册;
    • 开发板原理图;
    • 开发板规格书;
    • 开发板外围芯片数据手册;
  • 开发必要软件/源码:

    • 交叉编译工具链;
    • Bootloader源码/镜像;
    • LinuxKernel源码、镜像;
    • Rootfs根文件系统镜像、源码;
    • 打包工具;
    • 系统镜像烧录工具;

    Linux各部分组成与镜像对应关系;

    在这里插入图片描述

2.常见编译框架

2.1GNU编译器编译过程

  • 预处理:pre-processing
  • 编译:compiling
  • 汇编:assembing
  • 链接:linking

在这里插入图片描述

2.2 Target和构建空间

  • 基础文件系统是由BusyBoxC库组成Target根文件系统的核心。

  • 在构建其它组件时,必须区分两个目录;

    • Target Space(目标空间):包含目标根文件系统,应用程序执行所需的一些。
    • Build Space(构建空间):包含比目标空间更多的文件,因为构建空间用于保存编译库和应用程序所需要的一切。所以至少保留头文件、二进制文件、配置文件。

2.3 可用的系统构建工具

  • Buildroot:由社区开发;
  • OpenWRT:最初是无线路由器Buildroot的一个分支,现在是一个更通用的项目;
  • PTXdist:由Pengutronix开发;
  • OpenEmbedded:更灵活也更复杂(工业化版本为Yocto);

3.软件包组成

  • 开源组件
  • Target设备工具
    • 网络
    • 系统使用程序
    • 编程语言
    • 音频、视频和多媒体
    • 图形套件
    • 数据库
    • 网络浏览器
  • 嵌入式系统构建语言

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

三分钟追踪工作流表单引擎几大优势

众所周知,企业都希望能实现开源节流。那么,如何实现这一目标是很多人都在思考的重要问题。低代码技术平台可操作性强、可视化界面丰富而简洁高效、灵活可靠,在推动企业流程化办公的过程中发挥了重要的市场价值和作用。本文将给大家介绍清楚低…

ROS小车设计问题记录

演示视频 问题小计 串口发送数据乱码IMU JY60 串口接收车轮测速电机调速 串口发送数据乱码 使用Send_User_Data()数据错误,数据帧输出为0x32;使用HAL_UART_Transmit_DMA()输出正确,数据帧输出为0x55。 解决: 将数组_data_to_sne…

vscode配置latex环境制作【文档、简历、resume】

vscode配置latex环境制作【文档、简历、resume】 1. 安装Tex Live及vscode插件 可以参考:vscode配置latex环境制作beamer ppt 2. 添加vscode配置文件 打开vscode,按下Ctrl Shift P打开搜索框,搜索Preference: Open User Settings (JSON…

[Linux]Mysql之主从同步

AB复制 一、主从复制概述 主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库;主数据库一般是准实时的业务数据库。 主从复制的作用 1.做数据的热备,作为后备数据库,主数据库服务器故障后&#xf…

【人工智能】Transformers之Pipeline(五):深度估计(depth-estimation)

目录 一、引言 二、深度估计(depth-estimation) 2.1 概述 2.2 技术路径 2.3 应用场景 2.4 pipeline参数 2.4.1 pipeline对象实例化参数 2.4.2 pipeline对象使用参数 2.4 pipeline实战 2.5 模型排名 三、总结 一、引言 pipeline&#xff08…

【Stable Diffusion】AI生成新玩法:图像风格迁移

【Stable Diffusion】 AI生成新玩法:图像风格迁移 1 背景导入 你是否曾梦想过让自己融入梵高的星空之中 或是将一幅风景画赋予毕加索的立体主义之魂 还是把人物送进宫崎骏的动画世界? 下面让我们来看看如何通过 Stable Diffusion 实现在图像中玩…

本地部署,Whisper: 开源语音识别模型

目录 简介 特点 应用 使用方法 总结 GitHub - openai/whisper: Robust Speech Recognition via Large-Scale Weak SupervisionRobust Speech Recognition via Large-Scale Weak Supervision - openai/whisperhttps://github.com/openai/whisper 简介 Whisper 是一个由 O…

mysql面试(二)

前言 这是mysql面试基础的第二节,主要是了解一下mysql数据更新的基本流程,还有三大日志的作用。但是具体的比如undolog是如何应用在mvcc机制中的,由于篇幅问题就放在下一在章节 数据更新流程 上面是说了更新真正数据之前的大致流程&#x…

19023 砍树

这个问题可以通过二分查找来解决。我们可以设定一个范围&#xff0c;然后在这个范围内查找最大的高度&#xff0c;使得砍下的木材长度至少为M。 以下是C的解决方案&#xff1a; #include <iostream> #include <vector> #include <algorithm> using namespa…

解决R语言找不到系统库导致的报错

1、基本需知 1.1、系统库 系统库&#xff08;System library&#xff09;是一组预先编写和编译好的软件模块集合&#xff0c;用于支持操作系统的基本功能和提供一些常见的服务。这些库通常由操作系统或第三方开发者提供&#xff0c;并且在系统安装过程中被预装或者用户可以额…

【Linux】通过分配虚拟内存的方式来解决因内存不够而导致部署的项目自动挂掉

多个 jar 包项目部署在同一台服务器上&#xff0c;当服务器配置低&#xff0c;内存不足时&#xff0c;有可能出现 nohup java -jar 启动的进程就莫名其妙挂掉的问题。 解决方式&#xff1a; 第一种方法&#xff1a;进行JVM调优可以改善这种情况&#xff0c;但是项目太多&…

DNS域名管理系统、搭建DNS服务

1.DNS概述 1.DNS&#xff08;domain name system &#xff09; 域名管理系统 域名&#xff1a; 由特定的格式组成&#xff0c;⽤来表示互联⽹中某⼀台计算机或者计算机组的名称&#xff0c;能够使⼈更⽅便的访问互联⽹&#xff0c;⽽不⽤记住能够被机器直接读取的IP地址。 计算…

JS+H5可视化广度优先算法

源码在效果图后面 可标记 障碍 起始点 终点 点击寻路按钮后&#xff0c;表格上会自动出现一条蓝色最佳路径&#xff08;加了一格一格显示的动画&#xff09; 以下是效果图 橙色起点 绿色终点 红色障碍物 以下是寻路结果 源代码 <!DOCTYPE html> <html lang&quo…

「运费速查神器」精明买家必备!一键查询1688供应商发货费用

对于从事跨境买家还是国内电商买家&#xff0c;在选品时&#xff0c;需要全面考虑商品成本&#xff0c;发货费用是供应链成本的重要组成部分。 原来如果我们在1688选品看供应商发货运费&#xff0c;需要一个个单独点击到商品的详情页去查看&#xff0c;再选择具体的收货地、再…

【C# WInForm】将TextBox从输入框设置为文本框

1.需求情形&#xff1a; textbox作为最常用的控件之一&#xff0c;通常是用来输入文本信息或者显示文字&#xff0c;但是如果要在界面中显示大段文本&#xff0c;一个带有边框、可选中的文本样式似乎不合适。像这样&#xff1a; 我需要的是这段文字不仅能跨行&#xff0c;而且…

浏览器打开PDF卡在加载(侧边翻译插件打不开PDF)

如果你的浏览器安装了一些翻译插件&#xff0c;那么可能会导致PDF加载不出来 比如我的浏览器中安装了“侧边翻译”&#xff0c;而我在view Elsever的论文时出现了加载不出来的问题—— 仍然以此扩展为例&#xff0c;那么解决办法是&#xff1a; 取消勾选——

2023 N1CTF-n1proxy

文章目录 参考rsa握手rust_proxy源码公匙交换和签名会话钥匙后续通信生命周期和裸指针代码审计漏洞点 libc-2.27.so大致思路&#xff08;exp还有变化&#xff09;调试exp泄露libc写free_hook执行命令exp 参考 https://github.com/Nu1LCTF/n1ctf-2023/tree/main/pwn/n1proxy ht…

【数据结构】AVL树(平衡二叉搜索树)

文章目录 1.AVL树1.1 AVL树的概念1.2 AVL树节点的定义1.3 AVL树的插入1.4 AVL树的旋转1.4.1 左单旋1.4.2 右单旋1.4.3 右左双旋1.4.4 左右双旋 1.5 AVL树的平衡验证1.6 AVL树的删除1.7 AVL树的性能 1.AVL树 在前面&#xff0c;我们已经介绍过了二叉搜索树&#xff0c;也了解到…

03 capture软件操作界面和常用设置介绍04 capture软件自带元件库设置

03 capture软件操作界面和常用设置介绍&&04 capture软件自带元件库设置 第一部分 03 capture软件操作界面和常用设置介绍一、分辨率二、产品选择三、颜色设置四、格点设置 第二部分 04 capture软件自带元件库设置 第一部分 03 capture软件操作界面和常用设置介绍 一、…

初识c++:string类(2)

#本节主要讲解c&#xff1a;string类的模拟实现 全部代码的实现在最后面&#xff01;&#xff01;&#xff01;有需要的自己往下滑&#xff0c;自取&#xff01;&#xff01;&#xff01;1.string类的模拟实现 2.浅拷贝 3.深拷贝 目录 #本节主要讲解c&#xff1a;string类…