คุณสร้างไบนารี 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 เท่านั้น สําหรับเป้าหมายที่ไม่ใช่ 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