CFSDN nhấn mạnh vào giá trị tạo ra nguồn mở và chúng tôi cam kết xây dựng nền tảng chia sẻ tài nguyên để mọi nhân viên CNTT có thể tìm thấy thế giới tuyệt vời của bạn tại đây.
Bài viết trên blog CFSDN này giải quyết nhanh chóng vấn đề về lỗi boost link thư viện (share) được tác giả sưu tầm và biên soạn. Nếu bạn quan tâm đến bài viết này thì nhớ like nhé.
Đã cài đặt thư viện Boost mới nhất.
Có một câu trong mô tả chính thức:
Cuối cùng.
$ ./b2 install sẽ để lại các tệp nhị phân Boost trong thư mục con lib/ của tiền tố cài đặt của bạn. Bạn cũng sẽ tìm thấy một bản sao của các tiêu đề Boost trong thư mục con include/ của tiền tố cài đặt, do đó từ nay bạn có thể sử dụng thư mục đó làm đường dẫn #include thay cho thư mục gốc Boost.
Hầu hết các thư viện Boost không yêu cầu biên dịch và liên kết động hoặc tĩnh. Một số ít thư viện, chẳng hạn như coroutine chuỗi biểu thức chính quy, cần thêm lời nhắc liên kết khi biên dịch mã nguồn của riêng chúng.
Ví dụ: khi biên dịch thư viện bằng biểu thức chính quy, lệnh như sau:
c++ -I /usr/local/include/boost/ main.cpp -o test1 -L /usr/local/lib -lboost_regex 。
Khi chạy sau khi hoàn thành:
LD_LIBRARY_PATH="/usr/local/lib" ./test1 。
Ngược lại sẽ báo lỗi:
lỗi khi tải thư viện chia sẻ: libboost_regex.so.1.64.0: không thể mở tệp đối tượng chia sẻ: Không có tệp hoặc thư mục nào như vậy.
Lời giải thích cho lỗi này trên stackoverflow là:
Không tìm thấy thư viện.
Theo mặc định, các thư viện được tìm kiếm trong /lib, /usr/lib và các thư mục được chỉ định bởi /etc/ld.so.conf.
Thông thường các thư viện hệ thống (như boost, nếu bạn cài đặt thông qua trình quản lý gói) nằm trong /usr/lib, nhưng có lẽ bạn không gặp trường hợp này.
Thư viện boost của bạn nằm ở đâu trên hệ thống của bạn? Bạn có tự biên dịch chúng không? Trong trường hợp này, bạn nên yêu cầu trình liên kết động tìm kiếm thư viện của bạn trong thư mục chúng nằm bằng cách sử dụng biến môi trường LD_LIBRARY_PATH
LD_LIBRARY_PATH="your/boost/directory" ./testfgci Tôi khuyên bạn nên cài đặt thư viện boost bằng trình quản lý gói của mình, dù sao thì điều này cũng sẽ giúp cuộc sống của bạn đơn giản hơn rất nhiều.
Nghĩa là, trước tiên hệ thống phải tải thư viện động khi chạy chương trình. Thư mục tìm kiếm của hệ thống nằm trong /etc/ld.so.conf hoặc /etc/ld.so.conf.d/*.conf và ở đó. không có liên kết nào trong thư mục này. Nơi đặt thư viện, bạn phải thêm địa chỉ thư mục vào tệp theo cách thủ công hoặc chỉ định giá trị LD_LIBRARY_PATH trước khi chạy chương trình.
Chỉ bằng cách này, thư viện động mới có thể được xác định chính xác.
Bài viết trên về cách giải quyết nhanh lỗi boost link thư viện (chia sẻ) là toàn bộ nội dung được editor chia sẻ, mong có thể cho các bạn tham khảo và cũng mong các bạn ủng hộ mình.
Cuối cùng, bài viết về cách giải quyết nhanh chóng lỗi liên kết thư viện boost (chia sẻ) kết thúc tại đây. Nếu bạn muốn biết thêm về cách giải quyết nhanh chóng vấn đề liên kết thư viện boost (chia sẻ), vui lòng tìm kiếm bài viết CFSDN hoặc tiếp tục duyệt. bài viết, hy vọng bạn sẽ ủng hộ blog của tôi trong tương lai! .
Tôi là một lập trình viên xuất sắc, rất giỏi!