คุณสร้างไบนารี Rust ได้โดยใช้ประเภทโมดูล rust_binary
เช่น
rust_binary {
name: "hello_rust",
srcs: ["src/hello_rust.rs"],
}
ในทํานองเดียวกัน คุณสามารถใช้ rust_binary_host
เพื่อระบุข้อบังคับสําหรับโฮสต์เท่านั้น
พร็อพเพอร์ตี้ rust_binary ที่ควรทราบ
นอกจากพร็อพเพอร์ตี้ทั่วไปที่สําคัญแล้ว พร็อพเพอร์ตี้ต่อไปนี้ก็สำคัญเช่นกัน หรือแสดงลักษณะการทํางานที่ไม่ซ้ำกันเฉพาะสําหรับประเภทโมดูล rust_binary
- static_executable: สร้างไบนารีนี้เป็นไบนารีแบบคงที่ และบอกเป็นนัยว่า
prefer_rlib
คือtrue
ไฟล์ปฏิบัติการแบบคงที่ทั้งหมดจะสร้างขึ้นได้สําหรับเป้าหมาย Bionic เท่านั้น สําหรับเป้าหมายที่ไม่ใช่ไบโอนิก เงื่อนไขนี้หมายความว่าprefer_rlib
เป็นเพียงtrue
เท่านั้น แต่ยังคงลิงก์libc
กับlibdl
แบบไดนามิก - prefer_rlib: เปลี่ยนการลิงก์
rustlibs
เพื่อเลือกการลิงก์rlib
โดยค่าเริ่มต้นสําหรับเป้าหมายอุปกรณ์ และลิงก์libstd
เป็นrlib
ในเป้าหมายอุปกรณ์ โปรดทราบว่าลักษณะการทำงานนี้เป็นลักษณะการทำงานเริ่มต้นของเป้าหมายโฮสต์และไม่มีผลกระทบต่อเป้าหมายโฮสต์
การลิงก์
โดยค่าเริ่มต้น โมดูล rust_binary
ที่กําหนดเป้าหมายเป็นอุปกรณ์จะลิงก์กับ libstd
แบบไดนามิกเสมอ และโดยค่าเริ่มต้นจะเลือกไลบรารี dylib
สําหรับข้อกําหนดซึ่งแสดงใน rustlibs
เว้นแต่ prefer_rlib
จะเท่ากับ true
หากต้องใช้ไบนารีแบบคงที่ทั้งหมด โปรดดูพร็อพเพอร์ตี้ static_executable
โมดูลโฮสต์จะลิงก์กับ libstd
แบบคงที่เสมอ และโดยค่าเริ่มต้นจะเลือกไลบรารี rlib
สำหรับ Dependency ที่แสดงใน rustlibs