বাইনারি মডিউল

rust_binary মডিউল টাইপ ব্যবহার করে রাস্ট বাইনারি তৈরি করা যায়; উদাহরণস্বরূপ:

rust_binary {
    name: "hello_rust",
    srcs: ["src/hello_rust.rs"],
}

একইভাবে, আপনি একটি হোস্ট-অনলি মডিউল সরবরাহ করতে rust_binary_host ব্যবহার করতে পারেন।

উল্লেখযোগ্য rust_binary বৈশিষ্ট্য

গুরুত্বপূর্ণ সাধারণ বৈশিষ্ট্যগুলো ছাড়াও, নিম্নলিখিত বৈশিষ্ট্যগুলোও হয় গুরুত্বপূর্ণ, অথবা rust_binary মডিউল টাইপের জন্য নির্দিষ্ট স্বতন্ত্র আচরণ প্রদর্শন করে:

  • static_executable : এই বাইনারিটিকে একটি স্ট্যাটিক বাইনারি হিসেবে বিল্ড করে, এবং এর জন্য prefer_rlib মান true হওয়া আবশ্যক। সম্পূর্ণ স্ট্যাটিক এক্সিকিউটেবল শুধুমাত্র বায়োনিক টার্গেটের জন্যই তৈরি করা যায়। নন-বায়োনিক টার্গেটের ক্ষেত্রে, এর জন্য শুধু prefer_rlib মান true হওয়া আবশ্যক, কিন্তু এটি libc এবং libdl ডাইনামিকভাবে লিঙ্ক করে।
  • prefer_rlib : ডিভাইস টার্গেটের জন্য ডিফল্টরূপে rlib লিঙ্কেজ নির্বাচন করতে rustlibs লিঙ্কেজ পরিবর্তন করে, এবং ডিভাইস টার্গেটে libstd একটি rlib হিসেবে লিঙ্ক করে। উল্লেখ্য যে, এটি হোস্ট টার্গেটের জন্য ডিফল্ট আচরণ, এবং সেগুলোর উপর এর কোনো প্রভাব নেই।

সংযোগ

ডিফল্টরূপে, ডিভাইসকে টার্গেট করা rust_binary মডিউলগুলো সর্বদা libstd সাথে ডায়নামিকভাবে লিঙ্ক করা হয় এবং prefer_rlib true না হলে, ডিফল্টরূপে rustlibs এ তালিকাভুক্ত ডিপেন্ডেন্সিগুলোর জন্য dylib লাইব্রেরিকে অগ্রাধিকার দেয়। যদি সম্পূর্ণ স্ট্যাটিক বাইনারির প্রয়োজন হয়, তবে static_executable প্রপার্টিটি দেখুন।

হোস্ট মডিউলগুলি সর্বদা libstd সাথে স্ট্যাটিক্যালি লিঙ্ক করা থাকে এবং ডিফল্টরূপে rustlibs এ তালিকাভুক্ত নির্ভরতাগুলির জন্য rlib লাইব্রেরিগুলিকে অগ্রাধিকার দেয়।