news 2026/6/10 12:28:40

Buildroot系统adb环境下-各种命令结果乱码

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Buildroot系统adb环境下-各种命令结果乱码

记录一次Buildroot系统adb环境下-各种命令结果乱码

文章目录

  • 前言-需求-场景
  • 一、实际效果-问题
  • 二、解决方案
  • 三、修改后效果
  • 四、知识点扩展
    • 1、核心概念与特点
      • 自动化构建:
      • 高度可定制与精简:
      • 生成完整镜像:
      • 不用于通用桌面/服务器发行版:
    • 2、主要组件(它帮你构建了什么)
    • 3、与 Yocto / OpenEmbedded 的对比
  • 总结

前言-需求-场景

  • 自己玩开发板,学习Linux系统知识点,用的是讯为开发板。
  • 自己在Windows 电脑上按照虚拟机,编译讯为提供的RK-Linux 源码来编译Buildroot 系统进行Linux 驱动学习
  • 编译好固件,烧录到RK主板上。adb shell 进入系统adb 环境

一、实际效果-问题

发现问题
命令返回结果都出现了乱码 、命令回车也会乱码、有符号,如下:


二、解决方案

这样导致自己无法正常输入命令和查看实际结果,非常不方便,就是无法开发了。

如下解决方案,大家可以尝试一下。

# 临时解决 ls-l--color=never # 永久解决(添加到~/.bashrc 或/etc/profile) echo"alias ls='ls --color=never'">>/etc/profile source/etc/profile

如果零时解决,效果如下:

三、修改后效果


四、知识点扩展

对于初学者来说,都没法理解Buildroot,它是做什么的都不知道。 我们只知道 ubuntu/Hot Red 服务器等基础知识点,这里顺便讲解下,方便自己理解。

Buildroot 是一个嵌入式 Linux 系统构建工具。它的核心功能是自动化、简化从零开始构建一个完整的、可启动的嵌入式 Linux 系统的过程。

你可以把它想象成一个高度定制化的“Linux 系统工厂”。

1、核心概念与特点

自动化构建:

  • 从源码开始,自动下载、配置、编译、安装。

  • 包含 交叉编译工具链(在性能强大的开发主机上,编译出能在目标嵌入式设备上运行的程序)、Linux 内核、根文件系统(包含所有库和应用程序)。

高度可定制与精简:

  • 采用 菜单配置界面(类似 Linux 内核的 make menuconfig),允许你精确选择需要的每一个软件包(如 Busybox、Dropbear、Qt5 等)、库和功能。

  • 最终生成的系统只包含你明确选择的东西,没有多余软件,因此体积可以非常小(小到几兆字节),非常适合资源受限的嵌入式设备。

生成完整镜像:

最终输出是可直接烧写到设备存储中的完整系统镜像,例如:

  • rootfs.tar(根文件系统归档)

  • sdcard.img(可直接写入 SD 卡或 eMMC 的磁盘映像)

  • 内核镜像、引导加载程序等。

不用于通用桌面/服务器发行版:

与 Ubuntu、Debian、OpenWrt 不同,Buildroot 不提供包管理机制。系统构建完成后,如果想增删软件,通常需要重新配置并完整构建整个系统。它的目标是生成一个固定的、针对特定应用的固件。

2、主要组件(它帮你构建了什么)

一个由 Buildroot 构建的典型系统包含:

  • 交叉编译工具链:构建过程的第一步,或使用预制的工具链。

  • Bootloader:如 U-Boot、GRUB(可选,也可用现成的)。

  • Linux 内核:包含你为特定硬件选择的驱动和配置。

  • 根文件系统:

核心工具:通常使用Busybox(一个集成了数百个常用Unix命令的单一精简可执行文件)。C库:如 glibc、musl(更小)、uclibc-ng。 用户所需的应用程序和库:如Web服务器、数据库、图形界面库、自定义业务程序等。
  • 根文件系统类型:可以生成 ext4、jffs2、squashfs 等多种格式,以适应不同的存储介质

3、与 Yocto / OpenEmbedded 的对比

这是嵌入式 Linux 领域另一个著名的构建框架。

特性BuildrootYocto / OpenEmbedded
核心目标简单、快速地构建固定的嵌入式系统。高度灵活、可扩展,用于构建复杂的、可维护的 Linux 发行版。
复杂度相对简单,学习曲线平缓。非常强大和复杂,学习曲线陡峭。
包管理无。系统构建后无法动态更新单个包。有完整的包管理系统(如 rpm、ipk),支持运行时安装、升级、移除软件包。
构建时间通常更快,因为工具链和包的选择更直接。首次构建极慢(需要构建自己的工具链和一切),但增量构建和 SDK 生成能力强。
适用场景产品功能相对固定,需要快速迭代出单一固件的中小项目。产品线复杂,需要为多种硬件平台生成不同变体,且需要长期维护和分发包的大型项目。
配置界面主要使用 make menuconfig。使用 BitBake 食谱文件(.bb 文件)和层(layers)来管理元数据。

简单比喻:

  • Buildroot 像一家精品餐厅,为你精心制作一道固定的套餐。好吃、高效,但菜品不可拆分。

  • Yocto 像一个大型食品工业园,拥有全套生产线和供应链,可以按需生产各种食品并配送到各处。


总结

  • 环境是开发的前提
  • 这里自己是通过AI 搜索,多次尝试的,最终解决
  • 如果遇到类似问题,可以借鉴,但是不同系统可能命令不一致,需要针对性看。
  • 理解Buildroot 是做什么的,我们为什么学习它
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 20:18:38

FSMN-VAD + Gradio:构建可视化语音检测系统的完整步骤

FSMN-VAD Gradio:构建可视化语音检测系统的完整步骤 1. 项目简介与核心功能 你是否遇到过这样的问题:一段长达十分钟的录音里,真正说话的时间可能只有三分钟,其余都是沉默或背景噪音?手动剪辑费时费力,还…

作者头像 李华
网站建设 2026/6/4 22:48:50

零基础也能玩转YOLOv9:一键部署训练与推理全流程(保姆级教程)

零基础也能玩转YOLOv9:一键部署训练与推理全流程(保姆级教程) 你是不是也遇到过这样的情况:想用最新的目标检测模型做项目,但光是环境配置就卡了三天?下载依赖报错、CUDA版本不匹配、PyTorch装不上……还没…

作者头像 李华
网站建设 2026/6/3 16:00:15

低配服务器运行OCR?科哥镜像内存优化技巧分享

低配服务器运行OCR?科哥镜像内存优化技巧分享 在AI模型越来越“重”的今天,动辄需要16GB、32GB甚至更高显存的OCR系统让不少开发者望而却步。但如果你手头只有一台4GB内存的小服务器,是否就真的与OCR无缘了?答案是:不…

作者头像 李华
网站建设 2026/6/10 11:10:09

AI大数据动物疫病预防与控制管理系统云平台的数字化升级

基于云计算、物联网、大数据、人工智能等技术构建的综合性管理系统,动物疫病预防与控制管理系统云平台是旨在实现动物疫病防控的全流程数字化、智能化、可视化,可以通过数据驱动来提升防控效率与决策科学性的目的,最后形成动物疫病预防与控制…

作者头像 李华
网站建设 2026/5/10 17:02:16

Speech Seaco Paraformer支持多语种吗?语言适配扩展前景分析

Speech Seaco Paraformer支持多语种吗?语言适配扩展前景分析 1. 模型定位与核心能力回顾 Speech Seaco Paraformer 是基于阿里云 FunASR 框架开发的一款中文语音识别模型,由开发者“科哥”进行二次封装并集成 WebUI 界面,极大降低了使用门槛…

作者头像 李华