ubuntu下C语言生成UUID方法一

1.UUID介绍

UUID 是 通用唯一识别码(Universally UniqueIdentifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。
其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的UUID。
在这样的情况下,就不需考虑数据库创建时的名称重复问题。目前最广泛应用的UUID,是微软公司的全局唯一标识符(GUID),而其他重要的应用,则有Linux ext2
/ext3文件系统、LUKS加密分区、GNOME、KDE、Mac OSX等等。另外我们也可以在e2fsprogs包中的UUID库找到实现。

2.ubuntu下安装UUID

sudo apt-get install uuid-dev

3.查找安装完链接库的位置    画重点

我们经常会通过apt-get来安装预编译的库或软件,这种安装方式非常简单快速,但是安装的库都到哪里了呢?

如果我们自己的c++工程需要链接这个库又该怎么做呢?
apt-get install安装目录是包的维护者确定的,不是用户,安装路径可以通过一下命令查找:

dpkg -L uuid-dev      //dpkg -L 链接库名

 找到 /usr/lib/x86_64-linux-gnu/libuuid.so     

4.添加库到CMakeList中去 

add_executable(job  main.cpp)
target_link_libraries(job /usr/lib/x86_64-linux-gnu/libuuid.so)

add_executable(项目名  源文件名.c/.cpp)    //用来添加可执行文件的函数,一般要添加库文件,都先使用它添加,在引入

target_link_libraries(项目名 引入的库文件路径和名称)    //用来引入库文件的命令

总结:

以后引入别的库文件,只要把libuuid.so和它的路径换了即可,在改一下项目名字(换成你自己的)

5.测试代码

#include <uuid/uuid.h>
#include <stdio.h>
int main()
{
    uuid_t uu;
    int i;
    uuid_generate( uu );
    printf("UUID为: ");
    for(i=0;i<3;i++)  //uuid号的长度,每个长度是由两个2个字符组成的,所以i=4时(uuid长度为4),uuid共有8个字符
    {
        printf("%X",uu[i]);
    }
    printf("\n");
    return 0;
}

测试结果:

posted @ 2021-05-02 17:45  nanfengnan  阅读(946)  评论(0编辑  收藏  举报