Pliki binarne Rusta można tworzyć przy użyciu modułu typu rust_binary
; Na przykład:
rust_binary {
name: "hello_rust",
srcs: ["src/hello_rust.rs"],
}
Podobnie możesz użyć rust_binary_host
aby udostępnić moduł tylko dla hosta.
Godne uwagi właściwości rust_binary
Oprócz ważnych właściwości wspólnych następujące właściwości są również ważne lub wykazują unikalne zachowanie specyficzne dla typu modułu rust_binary
:
- static_executable : Tworzy ten plik binarny jako statyczny plik binarny i sugeruje, że
prefer_rlib
matrue
. W pełni statyczne pliki wykonywalne można tworzyć tylko dla celów bionicznych. W przypadku celów niebionicznych oznacza to jedynie, żeprefer_rlib
matrue
, ale nadal dynamicznie łączylibc
ilibdl
. - prefer_rlib : Zmienia powiązanie
rustlibs
aby domyślnie wybierać powiązanierlib
dla urządzeń docelowych i łączylibstd
jakorlib
na urządzeniach docelowych. Należy pamiętać, że jest to domyślne zachowanie obiektów docelowych hostów i nie ma na nie wpływu.
Połączenie
Domyślnie moduły rust_binary
przeznaczone dla urządzeń są zawsze połączone dynamicznie z libstd
i domyślnie będą preferować biblioteki dylib
dla zależności wymienionych w rustlibs
chyba że prefer_rlib
ma true
. Jeśli wymagane są w pełni statyczne pliki binarne, zobacz właściwość static_executable
.
Moduły hosta są zawsze połączone statycznie z libstd
i domyślnie preferują biblioteki rlib
dla zależności wymienionych w rustlibs
.