分类: 嵌入式
thumbnail

C 语言模糊匹配的实现方法: glob() 与 fnmatch()的分析

在 Linux/Unix C 语言编程中,我们经常需要处理文件路径、通配符匹配、自动化构建脚本、工具链等问题。 glob() 和 fnmatch() 是两个非常常见但容易混淆的接口,它们都支持类似 shell 中的通配符匹配(如 *.c、src/*.h),但实际用途却……
thumbnail

不同架构下readdir() 返回值中 struct dirent.d_type 的取值差异与解决方法

一、问题背景 在 Linux 系统中,readdir() 是最常用的目录遍历函数之一。 其返回值为一个指向 struct dirent 的指针,该结构定义在 <dirent.h> 中,用于描述目录项的基本信息。 结构体的核心成员包括: struct dirent { ino……
thumbnail

解决运行 Lua 脚本时中文输出乱码的问题

运行 lua config.lua 时出现的乱码提示: 閿欒锛氭湭鎸囧畾杈撳叆鎴栬緭鍑鸿矾寰 其实是中文报错信息被错误编码显示导致的。 这类乱码常见于 Windows 控制台(cmd/powershell) 默认编码和 Lua 输出编码不一致。 一、原因分析 乱码原因……
thumbnail

嵌入式下解决stat调用出现Value too large for defined data type (errno=75)的问题

在 Linux 环境下开发文件处理类程序时,我们经常会使用 stat() 系统调用获取文件的元信息(如大小、时间戳、权限等)。然而,在某些情况下,程序可能会出现如下错误: stat 失败: errno=75 (Value too large for defined data type) 这……
thumbnail

iPerf静态编译方法,解决iPerf编译后仍然是动态库的问题

iPerf 是一个广泛使用的网络性能测试工具,通常用于测试带宽、延迟等网络指标。在一些嵌入式或者特殊平台上,我们需要将 iPerf 静态编译,以方便部署。本文将详细讲解进行静态编译,解决iPerf编译后仍然是动态库的问题 1. 获取源代码 ……
thumbnail

Clang编译器详解:搞懂Clang编译器的前世今生和实际应用(交叉编译和静态分析)

C 和 C++ 依然是许多系统和应用开发的核心语言。随着代码量增加和语言特性更新,对编译器的要求也越来越高。 Clang 作为一种现代编译器前端,它不仅速度快、诊断信息清晰,还拥有良好的跨平台支持和工具链生态。 一、 Clang 的起源 Cla……
thumbnail

Linux 配置 Samba 服务,Windows 访问共享目录

在混合系统的网络环境中,Linux 与 Windows 之间共享文件是非常常见的需求。 如果希望 Windows 直接访问 Linux 的文件夹,最便捷的方法就是在 Linux 上配置 Samba 服务,让它充当 SMB 文件服务器。 本文将详细介绍如何在 Linux 上安装……
thumbnail

Windows 配置 Samba 服务并在 Linux 挂载访问

我们常常需要在 Windows 与 Linux 之间传输文件。虽然两者文件系统不同,但通过 SMB/CIFS 协议(Samba),可以轻松实现跨系统的文件共享。本文将详细介绍如何在 Windows 系统上配置 Samba 文件共享,以及在 Linux 上挂载访问。 一、在 ……
thumbnail

armel与armhf的区别:ABI、动态库与交叉编译,一文搞懂

在嵌入式 Linux、IoT 和交叉编译开发中,经常会遇到 ARM 架构的不同版本标记,例如 armel 和 armhf。 理解它们之间的区别,对于编译程序、使用动态库和系统部署至关重要。本文将从 ARM 架构、ABI、浮点支持、动态库和编译实践等角度全……
thumbnail

解决 MySQL 数据库无法远程连接的问题

在使用 MySQL 数据库时,遇到这样的问题:本地可以连接 MySQL,但远程机器连接时,总是报错 Host ... is not allowed to connect to this MySQL server。这通常是因为 MySQL 的用户权限或配置限制了远程访问。 1. 登录 MySQL 数据……