इस पेज पर, Cuttlefish डिवाइसों पर Android के कर्नेल बनाने का तरीका बताया गया है.
इस्तेमाल किए जा सकने वाले कर्नेल मेनिफ़ेस्ट
कटलफ़िश मुख्य और एओएसपी जीएसआई रिलीज़ पर, इन कर्नेल मेनिफ़ेस्ट के साथ काम करती है.
aosp-main
परcommon-android-mainline
common-android16-6.12
common-android15-6.6
common-android14-6.1
common-android14-5.15
aosp-android13-gsi
कोcommon-android13-5.15
common-android13-5.10
aosp-android12-gsi
कोcommon-android12-5.10
common-android12-5.4
common-android-4.19-stable
aosp-android11-gsi
परcommon-android11-5.4
common-android-4.19-stable
common-android-4.14-stable
कटलफ़िश डिवाइस पर कर्नेल के डेवलपमेंट के लिए, कर्नेल सोर्स नीचे दिए गए हैं.
kernel/common-android-mainline
kernel/common-android16-6.12
kernel/common-android15-6.6
kernel/common-android14-6.1
kernel/common-android14-5.15
kernel/common-android13-5.15
kernel/common-android13-5.10
Android के कर्नेल डेवलप करना
कटलफ़िश डिवाइस पर कर्नेल डेवलप करने के लिए, यह तरीका अपनाएं:
अपने कटलफ़िश डिवाइस के लिए, सही कर्नेल रेपो मेनिफ़ेस्ट का क्लोन बनाएं और कोई भी बदलाव करें.
mkdir common-android-mainline
cd common-android-mainline
repo init -u https://android.googlesource.com/kernel/manifest -b common-android-mainline
repo sync -c -j$(nproc) -q
कर्नेल और रैमडिस्क बनाएं. ज़्यादा जानकारी के लिए, वर्चुअल डिवाइस के लिए वेंडर मॉड्यूल बनाना लेख पढ़ें.
tools/bazel run //common-modules/virtual-device:virtual_device_x86_64_dist
अगर
common-android-4.19-stable
,common-android-4.14-stable
याcommon-android11-5.4
कर्नेल मेनिफ़ेस्ट का इस्तेमाल किया जा रहा है, तो इसे चलाएं:BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh && BUILD_CONFIG=common-modules/virtual-device/build.config.cuttlefish.x86_64 build/build.sh
स्थानीय तौर पर बनाने के बजाय (कर्नेल सोर्स डाउनलोड करने से बचने के लिए, कर्नेल डेवलपमेंट एनवायरमेंट सेट अप करने से बचने के लिए), इससे जुड़ी आर्टफ़ैक्ट ci.android.com से डाउनलोड किए जा सकते हैं.
Cuttlefish की मदद से, कर्नेल और रैमडिस्क लॉन्च करें.
cvd create \ -kernel_path=./out/virtual_device_x86_64/dist/bzImage \ -initramfs_path=./out/virtual_device_x86_64/dist/initramfs.img
अगर कोई गैर-GKI कर्नेल (जो भी 4.19 या उससे कम का हो) लॉन्च करता है, तो
-initramfs_path
आर्ग्युमेंट को छोड़ दें.अगर आपको Cuttlefish के aarch64 वर्शन पर कर्नेल लॉन्च करना है, तो
aarch64
बिल्ड कॉन्फ़िगरेशन का इस्तेमाल करें. साथ ही,bzImage
के बजायImage
आर्टफ़ैक्ट का इस्तेमाल करें.cvd create \ -kernel_path=./out/virtual_device_aarch64/dist/Image \ -initramfs_path=./out/virtual_device_aarch64/dist/initramfs.img