Sự khác biệt giữa libsqlite3.dylib và libsqlite3.0.dylib là gì?


112

Tôi đang bắt đầu với cơ sở dữ liệu SQLite trong một ứng dụng mà tôi đang làm việc. Tôi chưa gặp phải sự cố nào nhưng một trong những bước đầu tiên từ hướng dẫn này là liên kết khung SQLite3. Hướng dẫn này gọi libsqlite3.0.dylib nhưng tôi nhận thấy một libsqlite3.dylib khác. Liệu cái sau chỉ là một liên kết tượng trưng đến thư viện v3 mới nhất như quy ước dành cho trình quản lý gói trên UNIX hay có sự khác biệt?

Adam

Câu trả lời:


95

Có phải cái sau chỉ là một liên kết tượng trưng đến thư viện v3 mới nhất như quy ước dành cho các trình quản lý gói trên UNIX không?

Đó chính xác là nó.


Cảm ơn Jeff - Tôi không chắc và không muốn giả định theo cách nào cả.
seekhavian

5
Xin lỗi, điều này có nghĩa là cái nào "nên" được sử dụng trong một dự án?
SG1

24
Nói chung, trừ khi bạn có nhu cầu cụ thể liên quan đến phiên bản chính xác của libsqlite3, bạn nên sử dụng libsqlite3.dylibkhi liên kết.
Jeff Kelley

33

Thực ra libsqlite3.dylibbản thân nó là một liên kết mà nó trỏ tới libsqlite3.0.dylib. Nói cách khác, trong dự án nếu bạn thêm libsqlite3.dylib và thêm libsqlite3.0.dylib để thực sự thêm cùng một tệp, không có sự khác biệt, vậy tại sao bạn muốn thêm libsqlite3.dylib?

Bởi vì libsqlite3.dylib luôn trỏ đến thư viện động sqlite3 mới nhất , nghĩa là nếu có một thư viện động mới (ví dụ: libsqlite3.1.dylib) thì libsqlite3.dylib sẽ trỏ đến động mới này (libsqlite3.1.dylib,) thay vì hơn trong libsqlite3.0.dylib! Vì vậy, đề xuất hoặc thêm libsqlite3.dylib!

Tham khảo-: http://www.databaseskill.com/3734528/

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.