2011-09-02 42 views
7

là gì tôi đã xây dựng Google Test với CMake trên Mac OS X và nhận được hai thư viện chia sẻ: libgtest.dyliblibgtest_main.dylib. Và bây giờ tôi cần cài đặt cả hai. Tôi biết có một số thư mục tìm kiếm mặc định trên Linux, chẳng hạn như /usr/lib, /usr/local/lib, v.v. Nhưng tôi không quen với Mac OS X và không biết vị trí đặt các thư viện đó .các thư mục tìm kiếm mặc định để liên kết thư viện trên Mac OS X

Trong Mac OS X Directory Structure, tôi thấy có ba thư mục của thư viện: ~/Library, /Library/usr/lib. Và tôi đã cố gắng đặt các thư viện gtest vào các thư mục này tương ứng và chỉ phát hiện ra các công cụ /usr/lib hoạt động.

Điều tôi muốn biết là có một số quy tắc về thư mục tìm kiếm mặc định trên Mac OS X giống như trên Linux và Windows.

+0

Tôi tự hỏi tại sao từ "libgtest_main.dylib" không có hiệu ứng nghiêng khi tôi nhập '' * '' trước và sau nó. –

+0

Tôi đã bỏ phiếu cho câu hỏi. Bởi vì đây là một thứ thường được làm sai, nó làm tôi đau lòng. Xem bình luận của tôi cho câu trả lời của aponomarenko dưới đây. –

Trả lời

6

Hãy nhìn vào các giá trị mặc định cho các biến môi trường được sử dụng bởi các mối liên kết dyld:

DYLD_FALLBACK_LIBRARY_PATH
      ...
Theo mặc định, nó được thiết lập để $ (HOME)/lib:/usr/local/lib:/lib:/usr/lib

This bài viết về "Triển khai một ứng dụng trên Mac OS X" và other bài viết về "Trình cài đặt Mac OS X" cũng có thể hữu ích.

+1

Bạn chắc chắn không triển khai một thư viện trong "thư mục người dùng không" giống như/lib v.v. Thông thường một ứng dụng Mac được đóng gói vào thư mục AppName.app. Không có gì ngăn cản bạn đặt libs của bạn vào nó, D Hai liên kết là khá tốt. –

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