लाइब्रेरी को डाउनलोड करने के बाद, मशीन और इसकी आपके सोर्स कंट्रोल सिस्टम में जांच कर ली है, तो: आपके प्रोजेक्ट की बिल्ड सेटिंग में बदलाव करता है.
स्टैटिक लाइब्रेरी
अपने प्रोजेक्ट को स्टैटिक लाइब्रेरी से लिंक करने के लिए, यह तरीका अपनाएं:
gamesdk/include
को अपने कंपाइलर में पाथ शामिल करें.- OpenGL के साथ इंटिग्रेशन के लिए,
swappy/swappyGL.h
को शामिल करें स्पैनिश ज़्यादातर मामलों में, हेडर फ़ाइल में वे सभी फ़ंक्शन होते हैं जिनकी आपको ज़रूरत होती है लाइब्रेरी को अपने इंजन में इंटिग्रेट करें. अपने लिंकर लाइब्रेरी पाथ में, नीचे दिए गए फ़ॉर्म का पाथ जोड़ें:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release
उदाहरण के लिए:
gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release
-lswappy_static
को अपने लिंकर कमांड में जोड़ें.
शेयर लाइब्रेरी
ऊपर दिए गए चरण स्थिर रूप से फ़्रेम पेसिंग लाइब्रेरी के वर्शन से लिंक करते हैं दिए गए एबीआई, एपीआई लेवल, एनडीके, और एसटीएल कॉम्बिनेशन के लिए कंपाइल किया जाता है. अगर एक से ज़्यादा बार आपकी सेटिंग के लिए उपलब्ध नहीं है, इसके बजाय आप शेयर लाइब्रेरी:
- अपने कंपाइलर में शामिल पाथ को अपडेट करने के लिए, पिछले सेक्शन के पहले और दूसरे चरण को अपनाएं और सही हेडर फ़ाइल का इस्तेमाल करें.
अपने लिंकर लाइब्रेरी पाथ में, नीचे दिए गए फ़ॉर्म का पाथ जोड़ें:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release/lib/swappy
-lswappy
को अपने लिंकर कमांड में जोड़ें.
स्टैटिक लिंकिंग से आपके कोड फ़ुटप्रिंट काफ़ी कम हो जाता है, क्योंकि आपको इसकी ज़रूरत नहीं होती
libswappy.so
शेयर लाइब्रेरी का बंडल बनाएं.
CMake का इस्तेमाल करना (सिर्फ़ स्टैटिक लाइब्रेरी)
अगर CMake का इस्तेमाल किया जा रहा है, तो gamesdk/samples/bouncyball/app/CMakeLists.txt
डाउनलोड की गई लाइब्रेरी में मौजूद फ़ाइल
उदाहरण के लिए, CMake कॉन्फ़िगरेशन का इस्तेमाल करें. इसमें एक यूटिलिटी फ़ाइल, gamesdk/samples/gamesdk.cmake
,
जो फ़ाइनल चेक करता है, सही कंपाइलर जोड़ता है और पाथ
एक टारगेट जनरेट करता है, जिसका इस्तेमाल करके लाइब्रेरी को लिंक किया जा सकता है.
इस सुविधा का इस्तेमाल करने के लिए, ये काम करें:
- इस फ़ाइल को अपनी CMakeLists.txt में शामिल करें:
include("path/to/gamesdk/samples/gamesdk.cmake")
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है - GameSDK वाले फ़ोल्डर के साथ
add_gamesdk_target
फ़ंक्शन को कॉल करें:add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)
- अपनी निजी लाइब्रेरी के लिए अपनी
target_link_libraries
में,swappy
को निर्भरता:target_link_libraries(native-lib swappy ...)
CMake के बेहतर इस्तेमाल के लिए, gamesdk.cmake
सोर्स फ़ाइल देखें.