4

我正在使用 GNOME 技术编写一个 GUI 应用程序,我需要为 RDF 文件中的资源定义 UUID。

我正在用 C++ 编写,但我不介意使用 C 库并将其包装在我自己的 C++ 包装器中。我也更喜欢使用现有的公共库而不是添加对 3rd 方库的依赖项。

我发现了两个似乎是标准的库,libuuid(作为 util-linux 的一部分随 Linux 内核一起提供)和 OSSP uuid 库,它具有 C++ 绑定。

我的系统上没有程序使用OSSP uuid库,但是我的整个桌面都依赖于libuuid包,可能是因为内核本身依赖于它。

问题是,我应该使用哪一个?有区别还是我可以随机选择?我不知道为什么会有不同的实现,但我想选择一个并坚持下去。

4

2 回答 2

4

如果你仍然在 Linux 上,可能你最好的选择是使用libuuid. 我的意思是,每个人都在使用它,它是一个非常好的库。

您必须依赖于所选的库,并且很可能libuuid已经存在于您的用户系统中。您注意到您的系统上没有任何程序使用OSSP,我的所有系统都是如此。那么,为什么还要麻烦和使用一些……让我们称之为第三方库……当您已经拥有一个被其他人使用并且工作得很好的流行库(我并不是OSSP说它工作得更糟,它也很好)?

我不知道有任何理由更OSSP uuid喜欢libuuid.

好吧,我可能应该注意到,您可以简单地从中读取 UUID,/proc/sys/kernel/random/uuid但这并不像使用 C 库那么有趣,对吧?

于 2013-06-02T21:47:21.087 回答
0

选择 libuuid,它有更广泛的用途,并且在出现问题时更容易获得反馈和查找文档。

于 2013-06-02T21:47:31.040 回答