gpt4 book ai didi

c - 需要 libudev 建议

转载 作者:太空狗 更新时间:2023-10-29 11:20:22 24 4
gpt4 key购买 nike

我正在着手进行一个编程项目,该项目需要先确认可移动媒体(例如 USB 拇指驱动器)的设备身份,然后才能继续做一些其他很酷的事情。

我的一些 friend 建议我使用序列号,使用 udevadm 命令进行的初步测试表明这应该有效。我做了一些额外的检查,看来如果我能让软件与 libudev 一起工作,那么它应该(至少)在 ubuntu、slackware 和 gentoo 上编译,这将是一个非常好的好处。

所以我用 bing 找到了一个教程并得到了 Signal 11 站点 (http://www.signal11.us/oss/udev/),这是一个写得很好的教程。它实际上似乎拥有我需要的一切。我下载代码。修复几个特定于平台的错误,然后进行编译。繁荣! Gcc 编译没有错误。到目前为止一切顺利。

但是当我尝试运行它时,它引发了一些错误,我意识到我需要阅读更多教程,以便我能够充分理解 libudev 以修复错误,并开发出可用的软件。问题是真的没有任何其他教程(我能找到)并且库文档的(唯一已知的?)站点 kernel.org 站点在最近的服务器妥协后关闭了。

我考虑过只向 system() 发出 udevadm 指令,然后解析结果,但这是将软件组合在一起的一种非常骇人听闻的方式,我计划在完成编写后将其发布给社区。

那么如何最好地学习 libudev?

最佳答案

libudev 是一个非常简单的库。在阅读了您提到的库并使用 API 文档(网站应该很快就会建立起来)之后,我能够得到我想要的东西。 udevadm 很有帮助,在发出 # udevadm info --query=all --name=/path/to/dev 之后,您将获得 udev 拥有的关于该设备的所有信息,更重要的是,这些是属性函数中使用的参数(例如 udev_device_get_property_value(device, "ID_VENDOR"))。因此,学习 libudev 的最佳方法是在 signal11 教程、API 文档和 udevadm 信息的帮助下开始使用它。

编辑:libudev 目前是 systemd 的一部分 - 文档可作为手册页使用 - https://www.freedesktop.org/software/systemd/man/libudev.html#

关于c - 需要 libudev 建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7432835/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com