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 chung quan trọng, các thuộc tính sau đây cũng 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ụ ý rằ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 là sinh học, điều này chỉ ngụ ý rằng prefer_rlibtrue, nhưng vẫn liên kết động 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 nhắm đến thiết bị luôn được liên kết động 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.