https://blog.csdn.net/ouyangfushu/article/details/85101625
Linux下libuuid安装使用
1、UUID概述
UUID含义是通用唯一识别码(Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF) 的组织应用在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部分。
UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成的API。按照开放软件基金会(OSF)制定的标准计算,用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字
UUID由以下几部分的组合:1)、当前日期和时间,UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同。2)、时钟序列。3)、全局唯一的IEEE机器识别号,如果有网卡,从网卡MAC地址获得,没有网卡以其他方式获得。
UUID的唯一缺陷在于生成的结果串会比较长。关于UUID这个标准使用最普遍的是微软的GUID(Globals Unique Identifiers)。在ColdFusion中可以用CreateUUID()函数很简单地生成UUID,其格式为:xxxxxxxx-xxxx- xxxx-xxxxxxxxxxxxxxxx(8-4-4-16),其中每个x是0-9 a-f 范围内的一个十六进制的数字。而标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12)
2、Linux下安装libuuid库
第一种方式终端输入:sudo apt-get install uuid-dev ,但是根据实践再用cmake编译.cpp包含<uuid/uuid.h>时报错,找不到对应的函数;而使用g++方式则可以,有点怪。
第二种直接源码编译,这样的话能在系统/usr/local/include和/usr/local/lib中找到对应头文件uuid.h和liuuid.so,便于cmake编译。具体编译步骤如下:
(1)下载源码压缩包:http://nchc.dl.sourceforge.net/project/libuuid/libuuid-1.0.3.tar.gz,也可以进入官网下载最新版本http://nchc.dl.sourceforge.net/project/libuuid
(2)解压tar -xzvf libuuid-1.0.3.tar.gz,进入解压目录:终端输入./configure; make; make install;这样三步完成安装,安装完成以后会提示安装在/usr/local/include和/usr/local/lib;接下来就可以放心些CMakeLists.txt了。