Pliki binarne Rust można tworzyć za pomocą typu modułu rust_binary
. np.:
rust_binary {
name: "hello_rust",
srcs: ["src/hello_rust.rs"],
}
Podobnie, możesz użyć rust_binary_host
, aby podać tylko host
.
Ważne właściwości Ruust_binary
Oprócz ważnych wspólnych właściwości
te właściwości również są ważne lub wykazują wyjątkowe zachowanie
dotyczące typu modułu rust_binary
:
- static_executable: kompiluje ten plik binarny jako statyczny plik binarny i sugeruje
prefer_rlib
–true
. W pełni statyczne pliki wykonywalne mogą być tworzone tylko dla celów bionicznych. W przypadku celów niebionicznych oznacza to tylko, żeprefer_rlib
totrue
, ale nadal łączy parametrylibc
ilibdl
dynamicznie. - prefer_rlib: zmienia połączenie z
rustlibs
, by wybrać połączenie z usługąrlib
. domyślnie dla urządzeń docelowych i łączylibstd
jakorlib
na urządzeniu celów. Pamiętaj, że jest to domyślne działanie w przypadku celów hostów. nie ma na nie żadnego wpływu.
Połączenie
Domyślnie moduły rust_binary
kierowane na urządzenia są zawsze połączone
dynamicznie w porównaniu z libstd
i domyślnie preferuje biblioteki dylib
zależności wymienione w tabeli rustlibs
, chyba że prefer_rlib
ma wartość true
. Jeśli w pełni
statyczne pliki binarne są wymagane – zobacz właściwość static_executable
.
Moduły hosta są zawsze połączone statycznie z libstd
oraz
domyślnie preferują biblioteki rlib
w przypadku zależności wymienionych w
rustlibs