Бинарные файлы Rust можно создавать с использованием типа rust_binary
; например:
rust_binary {
name: "hello_rust",
srcs: ["src/hello_rust.rs"],
}
Аналогичным образом вы можете использовать rust_binary_host
для предоставления модуля только для хоста.
Примечательные свойства ржавчины_binary
В дополнение к важным общим свойствам следующие свойства также либо важны, либо демонстрируют уникальное поведение, специфичное для типа rust_binary
:
- static_executable : собирает этот двоичный файл как статический двоичный файл и подразумевает, что
prefer_rlib
имеет значениеtrue
. Полностью статические исполняемые файлы могут быть созданы только для бионических целей. Для небионических целей это означает только то, чтоprefer_rlib
имеетtrue
, но он по-прежнему динамически связываетlibc
иlibdl
. - предпочитаете_rlib : изменяет связь
rustlibs
, чтобы выбрать связьrlib
по умолчанию для целевых устройств устройства, и связываетlibstd
какrlib
с целевыми устройствами. Обратите внимание, что это поведение по умолчанию для целевых узлов хоста и не оказывает на них никакого влияния.
Связь
По умолчанию модули rust_binary
, нацеленные на устройства, всегда динамически связываются с libstd
и по умолчанию отдают предпочтение библиотекам dylib
для зависимостей, перечисленных в rustlibs
если prefer_rlib
имеет true
. Если требуются полностью статические двоичные файлы, см. свойство static_executable
.
Модули хоста всегда статически связаны с libstd
и по умолчанию предпочитают библиотеки rlib
для зависимостей, перечисленных в rustlibs
.