首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要libudev建议

需要libudev建议
EN

Stack Overflow用户
提问于 2011-09-15 22:48:37
回答 1查看 5.6K关注 0票数 3

我正在着手一个编程项目,它需要确认可移动介质(例如usb拇指驱动器)的设备身份,然后才能继续做一堆其他很酷的事情。

我的一些朋友建议我使用序列号,使用udevadm命令进行的初步测试表明这应该是可行的。我做了一些额外的检查,似乎如果我能让软件在libudev上工作,那么它应该(最低限度)在ubuntu,slackware和gentoo上编译,这将是一个非常好的好处。

所以我用必应找到了一个教程,并获得了Signal 11网站(http://www.signal11.us/oss/udev/),这是一个写得很好的教程。实际上,它似乎有我需要的一切。我下载了代码。修复几个特定于平台的bug,然后进行编译。轰隆隆!Gcc编译时没有错误。到目前一切尚好。

但当我尝试运行它时,它会引发一些错误,我意识到我需要阅读更多的教程,以便我能够更好地理解libudev,从而修复这些错误,并生成可以工作的软件。问题是,真的没有任何其他教程(我能找到)和kernel.org站点是(唯一已知的?)在最近的服务器受到危害后,库文档的网站已关闭。

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

那么学习libudev最好的方法是什么呢?

EN

回答 1

Stack Overflow用户

发布于 2011-09-16 02:21:09

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#

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7432835

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档