15个版本

0.2.13 2024年7月28日
0.2.12 2024年3月27日
0.2.11 2024年1月20日
0.2.10 2023年11月1日
0.2.1 2021年10月25日

#569Unix API

Download history 40/week @ 2024-04-15 51/week @ 2024-04-22 82/week @ 2024-04-29 34/week @ 2024-05-06 37/week @ 2024-05-13 56/week @ 2024-05-20 40/week @ 2024-05-27 65/week @ 2024-06-03 43/week @ 2024-06-10 64/week @ 2024-06-17 47/week @ 2024-06-24 61/week @ 2024-07-01 41/week @ 2024-07-08 33/week @ 2024-07-15 166/week @ 2024-07-22 116/week @ 2024-07-29

每月361次下载
用于 lm-sensors

MIT 协议

24KB
324

crates.io docs.rs license

sensors-sys:为 libsensors 提供不安全的Rust绑定

lm-sensors 为Linux中的硬件监控驱动程序提供用户空间支持。

此crate针对Linux特定。为非Linux平台或Linux内核构建它会导致crate为空。

此crate链接到 libsensors,并且需要安装它。以下为示例安装说明。

安装 libsensors

此crate链接到 libsensors,并且需要安装它。

库、其C头文件以及 clang 编译器需要在 构建机器 上安装。例如,在Debian上,可以按以下方式安装

$ sudo apt install clang libsensors-dev

如果库是动态链接的(最常见的配置),则需要安装到目标计算机上才能运行生成的程序。例如,在Debian上,可以按以下方式安装

$ sudo apt install libsensors5

支持的环境变量

此crate依赖于一些环境变量及其变体。对于每个环境变量(例如,CC),以下是它接受的变体

  • <var>_<target>,例如,CC_aarch64-unknown-linux-gnu
  • <var>_<target-with-underscores>,例如,CC_aarch64_unknown_linux_gnu
  • TARGET_<var>,例如,TARGET_CC
  • <var>,例如,CC

以下环境变量(及其变体)会影响此crate的构建

  • LMSENSORS_STATIC
  • LMSENSORS_PATH
  • LMSENSORS_INCLUDE_DIR
  • LMSENSORS_LIB_DIR
  • CC
  • CFLAGS

动态或静态链接

如果可能,这个包会动态链接到 libsensors,但不是在基于 musl C 库的平台。

可以通过设置环境变量 LMSENSORS_STATIC1 或启用包功能 static 来改变这种行为。如果两者都定义了,则 LMSENSORS_STATIC 的值优先。

LMSENSORS_STATIC 设置为 0 强制动态链接。

查找 lm-sensors 库和头文件

默认情况下,这个包会根据默认的目标 C 编译器查找 lm-sensors 头文件和库。

可以通过以下方式改变这种行为

  • 定义环境变量 LMSENSORS_PATH 为包含 includelib 子目录的目录路径,其中头文件和库被安装。
  • 或定义一个或两个环境变量 LMSENSORS_INCLUDE_DIRLMSENSORS_LIB_DIR 为头文件和库所在的目录路径。如果也定义了 LMSENSORS_PATH,则 LMSENSORS_INCLUDE_DIRLMSENSORS_LIB_DIR 优先。

根据这个包

这个包为依赖于它的其他包提供了以下变量

  • DEP_LMSENSORS_INCLUDE:库 C 头文件所在的目录路径。
  • DEP_LMSENSORS_LIB:库二进制所在的目录路径。

仅文档构建模式

“仅文档”构建模式允许即使 libsensors 和其头文件不可用,也能构建文档。要在此模式下构建,请设置环境变量 DOCS_RS1

$ env DOCS_RS=1 cargo doc --open

生成的文档基于 libsensors 版本 3.6.0

⚠️ 在这种模式下生成的包可能 不可用

版本管理

本项目遵循 语义版本控制CHANGELOG.md 文件详细说明了随时间的变化。

依赖关系

~0–2.8MB
~44K SLoC