Để thuận tiện, tôi đã thêm các trang có liên quan dưới đây.
Hiểu (trước) của tôi trước tiên: Nếu tôi cần tách các tùy chọn với ,, điều đó có nghĩa -Wllà tùy chọn thứ hai không phải là một tùy chọn khác bởi vì nó xuất hiện trước ,đó có nghĩa là nó là một đối số cho -rpathtùy chọn.
Tôi không hiểu làm thế nào -rpathcó thể có một -Wl,.cuộc tranh cãi!
Điều có ý nghĩa trong tâm trí tôi sẽ là thế này:
-Wl,-rpath .
Điều này sẽ gọi tùy chọn liên kết -rpath với đối số thư mục hiện tại.
người đàn ông gcc:
-Wl, tùy chọn
Vượt qua tùy chọn như một tùy chọn để liên kết. Nếu tùy chọn chứa dấu phẩy, nó được chia thành nhiều tùy chọn tại dấu phẩy. Bạn có thể sử dụng cú pháp này để truyền một đối số cho tùy chọn. Ví dụ,
-Wl,-Map,output.mapchuyển-Map output.mapđến trình liên kết. Khi sử dụng trình liên kết GNU, bạn cũng có thể có được hiệu ứng tương tự với `-Wl, -Map = output.map '.
người đàn ông ld:
-rpath = dir
Thêm một thư mục vào đường dẫn tìm kiếm thư viện thời gian chạy. Điều này được sử dụng khi liên kết thực thi ELF với các đối tượng được chia sẻ. Tất cả các đối số -rpath được nối và chuyển đến trình liên kết thời gian chạy, sử dụng chúng để định vị các đối tượng chia sẻ khi chạy. Tùy chọn -rpath cũng được sử dụng khi định vị các đối tượng chia sẻ cần thiết cho các đối tượng chia sẻ được bao gồm rõ ràng trong liên kết;