İkili 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 barındırıcıya yönelik bir modül sağlamak için rust_binary_host değerini kullanabilirsiniz.

Önemli rust_binary özellikleri

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

  • static_executable: Bu ikili dosyayı statik ikili dosya olarak oluşturur ve prefer_rlib değerinin true olduğunu belirtir. Tamamen statik yürütülebilir dosyalar yalnızca biyonik hedefler için üretilebilir. Biyonik olmayan hedefler için bu, yalnızca prefer_rlib'in true olduğu anlamına gelir ancak yine de libc ile libdl'ı dinamik olarak bağlar.
  • prefer_rlib: Cihaz hedefleri için varsayılan olarak rlib bağlantısını seçecek şekilde rustlibs bağlantısını değiştirir ve cihaz hedeflerinde libstd'i rlib olarak bağlar. Bu durumun, ana makine hedefleri için varsayılan davranış olduğunu ve bu hedefleri etkilemediğini unutmayın.

Bağlantı

Cihazları hedefleyen rust_binary modülleri varsayılan olarak her zaman libstd'a dinamik olarak bağlanır ve prefer_rlib true olmadığı sürece varsayılan olarak rustlibs'da listelenen bağımlılıklar için dylib kitaplıklarını tercih eder. Tamamen statik ikili dosyalar gerekiyorsa static_executable mülküne bakın.

Barındırma modülleri her zaman libstd'e statik olarak bağlanır ve varsayılan olarak rustlibs'de listelenen bağımlılıklar için rlib kitaplıklarını tercih eder.