একটি Cuttlefish হাইব্রিড ডিভাইস তৈরি করুন

এই পৃষ্ঠায় একটি কাটলফিশ হাইব্রিড ডিভাইস (CHD) তৈরি করার পদ্ধতি বর্ণনা করা হয়েছে।

একটি CHD হলো একটি হাইব্রিড ভার্চুয়াল কাটলফিশ ডিভাইস, যা ডিভাইসটির HAL-গুলোতে কাটলফিশ সিস্টেম ইমেজের পরিবর্তে কোনো ফিজিক্যাল ডিভাইসের সিস্টেম ইমেজ চালায়। এর নিম্নলিখিত সুবিধাগুলো রয়েছে:

  • প্রাথমিক উন্নয়ন এবং পরীক্ষা: সিএইচডি (CHD) ভৌত হার্ডওয়্যার উপলব্ধ হওয়ার আগেই পরবর্তী প্রজন্মের সিস্টেম সফটওয়্যারের প্রাথমিক উন্নয়ন এবং পরীক্ষার সুযোগ করে দেয়।

  • সম্প্রসারণযোগ্যতা: সিএইচডি উন্নয়ন এবং পরীক্ষণ সক্ষমতার সহজতর সম্প্রসারণে সহায়তা করে।

একটি CHD ছবি তৈরি করুন

একটি CHD ইমেজ তৈরি করতে, এই ধাপগুলো অনুসরণ করুন:

  1. make dist ব্যবহার করে ভেন্ডর টার্গেট এবং ফিজিক্যাল ডিভাইসের জন্য টার্গেট ফাইলগুলো তৈরি করুন। নিম্নলিখিত অপশনগুলোর মধ্যে যেকোনো একটি ব্যবহার করে ভেন্ডর টার্গেট ফাইলগুলো তৈরি করুন:

  2. build_cf_hybrid_device.py স্ক্রিপ্টটি চালিয়ে দুটি টার্গেট ফাইলকে একত্রিত করে একটি CHD টার্গেট ফাইল তৈরি করুন এবং সেই CHD টার্গেট ফাইল থেকে CHD ইমেজগুলো জেনারেট করুন। এই স্ক্রিপ্টটি merge_target_files.py ব্যবহার করে দুটি টার্গেট ফাইলকে একত্রিত করে একটি CHD টার্গেট ফাইল তৈরি করে এবং img_from_target_files ব্যবহার করে সেই CHD টার্গেট ফাইল থেকে CHD ইমেজগুলো জেনারেট করে।

    python3 tools/treble/cuttlefish/build_cf_hybrid_device.py \
      --framework_target_files_zip <physical_device_target_files.zip> \
      --vendor_target_files_zip <cuttlefish_device_target_files.zip> \
      --otatools_zip <cuttlefish_otatools.zip> \
      --target chd \
      --output_dir <output_directory>
    

একটি কাটলফিশ বিক্রেতা লক্ষ্য তৈরি করুন

একটি কাটলফিশ ভেন্ডর-অনলি টার্গেট তৈরি করতে, এই ধাপগুলো অনুসরণ করুন:

আপনি aosp_cf_vendor.mk ব্যবহার করে aosp_cf_arm64_phone_vendor টার্গেটটি সংজ্ঞায়িত করতে পারেন, যা আপনি একটি CHD ইমেজের জন্য ভেন্ডর টার্গেট ফাইল হিসেবে ব্যবহার করতে পারবেন।

  1. কাটলফিশ টার্গেটটি উত্তরাধিকারসূত্রে লাভ করুন যা সম্পূর্ণ আর্টিফ্যাক্ট তৈরি করে।

    $(call inherit-product, device/google/cuttlefish/vsoc_arm64/phone/aosp_cf.mk)
    
  2. লক্ষ্যের নাম নির্ধারণ করুন।

    PRODUCT_NAME := aosp_cf_arm64_phone_vendor
    
  3. সম্পূর্ণ আর্টিফ্যাক্টগুলো থেকে অপ্রয়োজনীয় বিল্ডগুলো নিষ্ক্রিয় করুন।

    PRODUCT_BUILD_SYSTEM_IMAGE := false
    PRODUCT_BUILD_SYSTEM_OTHER_IMAGE := false
    PRODUCT_BUILD_PRODUCT_IMAGE := false
    PRODUCT_BUILD_SYSTEM_EXT_IMAGE := false
    PRODUCT_BUILD_SUPER_PARTITION := false
    TARGET_SKIP_OTA_PACKAGE := true