Mô-đun nhị phân

Bạn có thể tạo tệp nhị phân Rust bằng cách sử dụng loại mô-đun rust_binary; ví dụ:

rust_binary {
    name: "hello_rust",
    srcs: ["src/hello_rust.rs"],
}

Tương tự, bạn có thể sử dụng rust_binary_host để cung cấp mô-đun chỉ dành cho máy chủ lưu trữ.

Các thuộc tính rust_binary đáng chú ý

Ngoài Các thuộc tính phổ biến quan trọng, các thuộc tính sau cũng rất quan trọng hoặc thể hiện hành vi riêng biệt dành riêng cho loại mô-đun rust_binary:

  • static_executable: Tạo tệp nhị phân này dưới dạng tệp nhị phân tĩnh và ngụ ý prefer_rlibtrue. Bạn chỉ có thể tạo các tệp thực thi tĩnh hoàn toàn cho các mục tiêu bionic. Đối với các mục tiêu không phải sinh học, điều này chỉ ngụ ý rằng prefer_rlibtrue, nhưng vẫn linh hoạt liên kết libclibdl.
  • prefer_rlib: Thay đổi mối liên kết rustlibs để chọn mối liên kết rlib theo mặc định cho các mục tiêu thiết bị và liên kết libstd dưới dạng rlib trên các mục tiêu thiết bị. Xin lưu ý rằng đây là hành vi mặc định cho các mục tiêu lưu trữ và không ảnh hưởng đến các mục tiêu đó.

Liên kết

Theo mặc định, các mô-đun rust_binary dành cho thiết bị nhắm mục tiêu luôn được liên kết linh hoạt với libstd và theo mặc định sẽ ưu tiên thư viện dylib cho các phần phụ thuộc được liệt kê trong rustlibs trừ phi prefer_rlibtrue. Nếu bạn cần tệp nhị phân tĩnh hoàn toàn, hãy xem thuộc tính static_executable.

Các mô-đun lưu trữ luôn được liên kết tĩnh với libstd và theo mặc định, ưu tiên thư viện rlib cho các phần phụ thuộc được liệt kê trong rustlibs.