Làm cách nào để tôi đặt biến env LD_LIBRARY_PATH?
Bạn đã thiết lập nó khi bạn làm điều này:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64
Nhưng điều đó sẽ không giải quyết vấn đề của bạn. $LD_LIBRARY_PATH
được tư vấn tại thời điểm thực hiện, để cung cấp một danh sách các thư mục bổ sung để tìm kiếm các thư viện có thể liên kết động. Nó không được tham khảo tại thời điểm liên kết (ngoại trừ có thể để định vị các thư viện được yêu cầu bởi chính các công cụ được xây dựng!).
Để thông báo cho trình liên kết nơi tìm thư viện tại thời điểm xây dựng, bạn cần sử dụng -L
tùy chọn liên kết. Bạn cũng đã làm điều đó:
-L /usr/lib64
Nếu bạn vẫn nhận được lỗi, thì bạn cần chắc chắn rằng thư viện thực sự ở đó. Bạn có một tập tin libboost_regex-mt.so
hoặc libboost_regex-mt.a
trong thư mục đó (hoặc bất kỳ)? Lưu ý rằng một tệp như libboost_regex-mt.so.othersuffix
không được tính cho mục đích này. Nếu bạn không có điều đó, thì có lẽ bạn cần phải cài đặt gói phát triển phân phối của mình cho thư viện này.