2009-07-06 18 views
32

Tôi đang cố gắng thay thế cuộc gọi đến :: CoCreateGUID để tôi có thể tạo GUID trong chương trình C++ trên Linux.Làm cách nào để có được/sử dụng LibuUID?

Tôi hiểu rằng libuuid hỗ trợ điều này và tôi đã đọc this question.

Tôi là một chút mới để Ubuntu/GCC/Linux, vì vậy tôi đã bắt đầu như thế này:

#include <uuid/uuid.h> 

Và bây giờ tôi đang mắc kẹt :) G ++ không thể tìm thấy uuid.h, và tôi 'không chắc chắn làm thế nào để có được/tìm thấy nó.

+0

Để mở rộng chủ đề, trên Gentoo: * Tìm kiếm /usr/include/uuid/uuid.h .. sys-apps/util-linux-2.18-r1 (/usr/include/uuid/uuid.h) –

+3

Cũng đáng chú ý là, trên hạt nhân Linux hiện tại bạn có thể nhận được uuid bằng cách đọc/proc/sys/kernel/ngẫu nhiên/uuid – Josef

Trả lời

55

Trong Ubuntu, bạn có thể thực hiện apt-cache search libuuid để xem các gói hiện có liên quan đến văn bản libuuid. Đây là kết quả đầu ra của tôi từ Ubuntu 9.04:

$ apt-cache search libuuid 
libuuid-perl - Perl extension for using UUID interfaces as defined in e2fsprogs 
libuuid1 - universally unique id library 
libuuid1-dbg - Debugging information for libuuid1 
uuid-dev - universally unique id library - headers and static libraries 
uuid-runtime - universally unique id library 
libuuidm-ocaml-dev - Universally unique identifiers for OCaml 

Vì vậy, tôi nghĩ rằng sản phẩm bạn muốn là uuid-dev và có thể là thời gian chạy. Thực hiện lệnh sudo apt-get install uuid-dev và cần cài đặt tiêu đề và thư viện mà bạn cần để khắc phục sự cố bạn đang gặp phải.

+4

thx, trông giống như những gì tôi đã mất tích, tôi chạy này: "apt-get install uuid-dev" và giải quyết được vấn đề của tôi. –

14

Nó cũng đáng nói rằng đây là một phần của util-linux sẵn ở đây:

http://www.kernel.org/pub/linux/utils/util-linux/

+2

Điều này sẽ dành cho những người muốn biên dịch gói từ nguồn. Nếu bạn đang sử dụng Ubuntu (hoặc Debian), thì 'apt-get' của gói ** dev ** là giải pháp thích hợp. –

Các vấn đề liên quan