NDK और CMake को इंस्टॉल और कॉन्फ़िगर करना

अपने ऐप्लिकेशन के लिए नेटिव कोड को कंपाइल और डीबग करने के लिए, आपको इन कॉम्पोनेंट की ज़रूरत होगी:

  • Android नेटिव डेवलपमेंट किट (NDK): यह टूल का एक सेट है. इसकी मदद से, Android पर C और C++ कोड का इस्तेमाल किया जा सकता है.
  • CMake: यह एक बाहरी बिल्ड टूल है. यह Gradle के साथ मिलकर, आपकी नेटिव लाइब्रेरी बनाता है. अगर आपको सिर्फ़ ndk-build का इस्तेमाल करना है, तो आपको इस कॉम्पोनेंट की ज़रूरत नहीं है.
  • LLDB: यह एक डीबगर है. Android Studio इसका इस्तेमाल नेटिव कोड को डीबग करने के लिए करता है. डिफ़ॉल्ट रूप से, LLDB को Android Studio के साथ इंस्टॉल किया जाएगा.

इस पेज पर, इन कॉम्पोनेंट को अपने-आप इंस्टॉल करने का तरीका बताया गया है. इसके अलावा, इन्हें मैन्युअल तरीके से डाउनलोड और इंस्टॉल करने के लिए, Android Studio या sdkmanager टूल का इस्तेमाल करने का तरीका भी बताया गया है.

NDK और CMake को अपने-आप इंस्टॉल करने की सुविधा

Android Gradle प्लग इन 4.2.0 और इसके बाद के वर्शन में, ज़रूरी NDK और CMake को अपने-आप इंस्टॉल करने की सुविधा होती है. ऐसा तब होता है, जब आपने प्रोजेक्ट को पहली बार बनाया हो और इनके लाइसेंस पहले ही स्वीकार कर लिए गए हों. अगर आपने लाइसेंस की शर्तें पहले ही पढ़ ली हैं और उनसे सहमत हैं, तो यहां दिए गए कमांड का इस्तेमाल करके, स्क्रिप्ट में लाइसेंस को पहले से ही स्वीकार किया जा सकता है:

   yes | ${sdk}/cmdline-tools/latest/bin/sdkmanager --licenses

NDK और CMake इंस्टॉल करना

NDK इंस्टॉल करने पर, Android Studio सबसे नया NDK चुनता है. ज़्यादातर प्रोजेक्ट के लिए, NDK के इस डिफ़ॉल्ट वर्शन को इंस्टॉल करना काफ़ी होता है. हालांकि, अगर आपके प्रोजेक्ट के लिए NDK के एक या उससे ज़्यादा वर्शन की ज़रूरत है, तो खास वर्शन डाउनलोड और कॉन्फ़िगर किए जा सकते हैं. ऐसा करने से, आपको यह पक्का करने में मदद मिलती है कि सभी प्रोजेक्ट में एक जैसे बिल्ड तैयार किए जा सकें. ये सभी प्रोजेक्ट, NDK के किसी खास वर्शन पर निर्भर होते हैं. Android Studio, NDK के सभी वर्शन को android-sdk/ndk/ डायरेक्ट्री में इंस्टॉल करता है.

Android Studio में CMake और डिफ़ॉल्ट NDK इंस्टॉल करने के लिए, यह तरीका अपनाएं:

  1. कोई प्रोजेक्ट खोलें और Tools > SDK Manager पर क्लिक करें.

  2. एसडीके टूल टैब पर क्लिक करें.

  3. NDK (साइड-बाय-साइड) और CMake चेकबॉक्स चुनें.

    SDK Manager की इमेज पहली इमेज. SDK टूल विंडो में, NDK (साइड-बाय-साइड) विकल्प दिख रहा है

  4. ठीक है पर क्लिक करें.

    डायलॉग बॉक्स में, आपको यह जानकारी मिलती है कि NDK पैकेज, डिस्क पर कितना स्टोरेज इस्तेमाल करता है.

  5. ठीक है पर क्लिक करें.

  6. इंस्टॉल पूरा होने के बाद, हो गया पर क्लिक करें.

  7. आपका प्रोजेक्ट, बिल्ड फ़ाइल को अपने-आप सिंक करता है और बिल्ड करता है. अगर कोई गड़बड़ी होती है, तो उसे ठीक करें.

CMake के किसी वर्शन को कॉन्फ़िगर करना

SDK Manager में, CMake का 3.6.0 फ़ोर्क किया गया वर्शन और 3.10.2 वर्शन शामिल है. जिन प्रोजेक्ट के लिए CMake का कोई खास वर्शन सेट नहीं किया जाता उन्हें CMake 3.10.2 की मदद से बनाया जाता है. CMake का वर्शन सेट करने के लिए, अपने मॉड्यूल की build.gradle फ़ाइल में यह कोड जोड़ें:

Groovy

android {
    ...
    externalNativeBuild {
        cmake {
            ...
            version "cmake-version"
        }
    }
}

Kotlin

android {
    ...
    externalNativeBuild {
        cmake {
            ...
            version = "cmake-version"
        }
    }
}

अगर आपको SDK Manager में शामिल नहीं किया गया CMake का कोई वर्शन इस्तेमाल करना है, तो यह तरीका अपनाएं:

  1. CMake की आधिकारिक वेबसाइट से, CMake डाउनलोड और इंस्टॉल करें.
  2. अपने मॉड्यूल की build.gradle फ़ाइल में, CMake का वह वर्शन डालें जिसका इस्तेमाल Gradle को करना है.
  3. CMake इंस्टॉलेशन का पाथ, अपने PATH एनवायरमेंट वैरिएबल में जोड़ें या उसे अपने प्रोजेक्ट की local.properties फ़ाइल में शामिल करें. अगर Gradle को आपकी build.gradle फ़ाइल में बताया गया CMake का वर्शन नहीं मिलता है, तो आपको बिल्ड से जुड़ी गड़बड़ी का मैसेज मिलता है.

    # If you set this property, Gradle no longer uses PATH to find CMake.
    cmake.dir = "path-to-cmake"</pre>
    
  4. अगर आपके वर्कस्टेशन पर Ninja बिल्ड सिस्टम पहले से इंस्टॉल नहीं है, तो Ninja की आधिकारिक वेबसाइट पर जाएं. इसके बाद, अपने ओएस के लिए उपलब्ध Ninja का नया वर्शन डाउनलोड और इंस्टॉल करें. यह भी पक्का करें कि आपने PATH एनवायरमेंट वैरिएबल में, Ninja इंस्टॉलेशन का पाथ जोड़ा हो.

NDK का कोई वर्शन इंस्टॉल करना

NDK का कोई खास वर्शन इंस्टॉल करने के लिए, यह तरीका अपनाएं:

  1. कोई प्रोजेक्ट खोलें और Tools > SDK Manager पर क्लिक करें.

  2. एसडीके टूल टैब पर क्लिक करें.

  3. पैकेज की जानकारी दिखाएं चेकबॉक्स क�� चुनें.

  4. NDK (साइड-बाय-साइड) चेकबॉक्स और इसके नीचे मौजूद उन चेकबॉक्स को चुनें ��ो NDK के ��न ��र्शन ��े ��े�� खाते हैं जिन्हें आपको इंस्टॉल करना है. Android Studio, NDK के सभी वर्शन को android-sdk/ndk/ डायरेक्ट्री में इंस्टॉल करता है.

    एसडीके टूल विंडो की इमेज दूसरी इमेज. एसडीके टूल विंडो में, एनडीके (साइड-बाय-साइड) के विकल्प दिख रहे हैं

  5. ठीक है पर क्लिक करें.

    डायलॉग बॉक्स में, NDK पैकेज के इस्तेमाल किए गए स्टोरेज की जानकारी दिखती है.

  6. ठीक है पर क्लिक करें.

  7. इंस्टॉल पूरा होने के बाद, हो गया पर क्लिक करें.

  8. आपका प्रोजेक्ट, बिल्ड फ़ाइल को अपने-आप सिंक करता है और बिल्ड करता है. अगर कोई गड़बड़ी होती है, तो उसे ठीक करें.

  9. आपको जिस NDK वर्शन का इस्तेमाल करना है उससे हर मॉड्यूल को कॉन्फ़िगर करें. Android Studio 3.6 या इसके बाद के वर्शन का इस्तेमाल करते समय, अगर आपने वर्शन के बारे में नहीं बताया है, तो Android Gradle प्लगिन ऐसा वर्शन चुनता है जो इसके साथ काम करता हो.

अपने प्रोजेक्ट में NDK के खास वर्शन कॉन्फ़िगर करना

अगर इनमें से कोई एक शर्त पूरी होती है, तो आपको अपने प्रोजेक्ट में NDK का वर्शन कॉन्फ़िगर करना पड़ सकता है:

  • आपका प्रोजेक्ट इनहेरिट किया गया है. इसलिए, आपको NDK और Android Gradle प्लगिन (AGP) के खास वर्शन इस्तेमाल करने होंगे. ज़्यादा जानकारी के लिए, Android Gradle प्लगइन के लिए NDK कॉन्फ़िगर कर���ा लेख पढ़ें.
  • आपने NDK के कई वर्शन इंस्टॉल किए हैं और आपको किसी खास वर्शन का इस्तेमाल करना है. इस मामले में, मॉड्यूल की build.gradle फ़ाइल में android.ndkVersion प्रॉपर्टी का इस्तेमाल करके वर्शन तय करें. ऐसा इस कोड के सैंपल में दिखाया गया है.

    Groovy

    android {
        ndkVersion "major.minor.build" // e.g.,  ndkVersion "21.3.6528147"
    }

    Kotlin

    android {
        ndkVersion = "major.minor.build" // e.g.,  ndkVersion "21.3.6528147"
    }

AGP के हर वर्शन के लिए डिफ़ॉल्ट NDK वर्शन

रिलीज़ करने से पहले, हर AGP वर्शन की पूरी तरह से जांच की जाती है. इसके लिए, उस समय के सबसे नए स्टेबल NDK वर्शन का इस्तेमाल किया जाता है. अगर आपने build.gradle फ़ा���ल में NDK ��र्शन क�� ��ा��े में ��ानकारी ��हीं दी है, तो आपके प्रोजेक्ट बनाने के लिए इस NDK वर्शन का इस्तेमाल किया जाता है. AGP के अलग-अलग वर्शन के लिए, डिफ़ॉल्ट NDK वर्शन की जानकारी AGP के प्रॉडक्ट की जानकारी वाले दस्तावेज़ और AGP के पिछले वर्शन के प्रॉडक्ट की जानकारी वाले दस्तावेज़ में दी गई है.