ikili modüller

Rust ikili dosyaları, rust_binary modül türü kullanılarak üretilebilir; Örneğin:

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

Benzer şekilde, yalnızca ana bilgisayar modülü sağlamak için rust_binary_host kullanabilirsiniz.

Dikkate değer Rust_binary özellikleri

Önemli ortak özelliklere ek olarak, aşağıdaki özellikler de önemlidir veya rust_binary modül türüne özgü benzersiz davranışlar sergiler:

  • static_executable : Bu ikili dosyayı statik bir ikili dosya olarak oluşturur ve prefer_rlib true olduğunu ima eder. Tamamen statik yürütülebilir dosyalar yalnızca biyonik hedefler için üretilebilir. Biyonik olmayan hedefler için bu yalnızca prefer_rlib true olduğu anlamına gelir, ancak yine de libc ve libdl dinamik olarak bağlar.
  • tercih_rlib : Cihaz hedefleri için varsayılan olarak rlib bağlantısını seçmek üzere rustlibs bağlantısını değiştirir ve libstd cihaz hedefleri üzerinde bir rlib olarak bağlar. Bunun ana bilgisayar hedefleri için varsayılan davranış olduğunu ve bunlar üzerinde hiçbir etkisi olmadığını unutmayın.

Bağlantı

Varsayılan olarak, cihazları hedefleyen rust_binary modülleri her zaman libstd dinamik olarak bağlanır ve prefer_rlib true olmadığı sürece, varsayılan olarak rustlibs listelenen bağımlılıklar için dylib kitaplıklarını tercih eder. Tamamen statik ikili dosyalar gerekiyorsa static_executable özelliğine bakın.

Ana bilgisayar modülleri her zaman libstd statik olarak bağlanır ve varsayılan olarak rustlibs listelenen bağımlılıklar için rlib kitaplıklarını tercih eder.