ينشئ النص البرمجي ndk-build
مشاريع تستخدم الإصدار المستند إلى التصميم من NDK.
. هناك وثائق أكثر تحديدًا
Android.mk و
تم استخدام الإعداد Application.mk
بواسطة ndk-build
الشؤون الداخلية
يتساوى تشغيل النص البرمجي "ndk-build
" مع تنفيذ الأمر التالي:
$GNUMAKE -f <ndk>/build/core/build-local.mk <parameters>
$GNUMAKE
نقطة إلى GNU Make 3.81 أو إصدار أحدث،
يشير <ndk>
إلى دليل تثبيت NDK. يمكنك استخدام
هذه المعلومات لاستدعاء ndk-build من نصوص برمجية أخرى ضمن واجهة الأوامر أو حتى النصوص الخاصة بك
إنشاء الملفات.
الاستدعاء من سطر الأوامر
يتوفّر النص البرمجي ndk-build
في دليل تثبيت NDK ذي المستوى الأعلى. لتشغيله
من سطر الأوامر، واستدعيه أثناء وجود دليل مشروع التطبيق أو تحته.
مثلاً:
$ cd <project> $ <ndk>/ndk-build
في هذا المثال، يشير <project>
إلى
الدليل الجذري للمشروع، و<ndk>
هو الدليل الذي
قمت بتثبيت NDK.
الخيارات
يتم تمرير جميع المعلمات إلى ndk-build مباشرةً إلى GNU الأساسي make
الذي يشغِّل النصوص البرمجية لإصدار NDK. دمج ndk-build
في النموذج ndk-build <option>
. مثلاً:
$ ndk-build clean
تتوفر الخيارات التالية:
-
clean
-
أزِل أي برامج ثنائية تم إنشاؤها سابقًا.
ملاحظة: على نظام التشغيل Mac OS X، يتم تشغيل
ndk-build clean
مع قد يؤدي العدد الكبير من عمليات التنفيذ المتوازية إلى حدوث خطأ في الإصدار يتضمن الرسالة التالية:rm: fts_read: No such file or directory
لتجنُّب هذه المشكلة، ننصحك بعدم استخدام "
-jN
". أو اختيار قيمة أصغر لـN
، مثل 2. -
V=1
- إطلاق أوامر الإصدار وعرض أوامر الإصدار
-
-B
- فرض عملية إعادة بناء كاملة.
-
-B V=1
- فرض عملية إعادة إنشاء كاملة وعرض أوامر الإصدار
-
NDK_LOG=1
- عرض رسائل سجل NDK الداخلية (المستخدمة لتصحيح أخطاء NDK نفسها).
-
NDK_DEBUG=1
- فرض إصدار قابل للتصحيح (راجِع الجدول 1).
-
NDK_DEBUG=0
- فرض إنشاء إصدار (راجِع الجدول 1).
-
NDK_HOST_32BIT=1
- استخدام سلسلة الأدوات دائمًا في وضع 32 بت.
-
NDK_APPLICATION_MK=<file>
-
إنشاء، باستخدام ملف
Application.mk
محدد يشار إليه بواسطة المتغيّرNDK_APPLICATION_MK
. -
-C <project>
-
قم بإنشاء التعليمات البرمجية الأصلية لمسار المشروع الموجود في
<project>
يمكنك الاستفادة من هذا الخيار إذا لم تكن تريدcd
. إليه في الوحدة الطرفية.
إمكانية تصحيح الأخطاء مقابل إصدارات الإصدارات
يمكنك استخدام الخيار NDK_DEBUG
، وفي بعض الحالات،
AndroidManifest.xml
لتحديد تصحيح الأخطاء أو إصدار الإصدار،
والسلوك المتعلق بالتحسين، وتضمين الرموز. يوضح الجدول 1
نتائج كل مجموعة ممكنة من الإعدادات.
إعدادات البيان | NDK_DEBUG=0 | NDK_DEBUG=1 | لم يتم تحديد NDK_DEBUG |
---|---|---|---|
android:debuggable="true" | تصحيح الأخطاء الرموز محسَّن*1 | تصحيح الأخطاء الرموز غير محسَّن*2 | (مثل NDK_DEBUG=1) |
android:debuggable="false" | إصدار الرموز محسَّنة | إصدار الرموز غير محسَّن | إصدار بدون رموز؛ محسَّن*3 |
*2: الإعداد التلقائي لتشغيل
ndk-gdb
.*3: الوضع التلقائي.
ملاحظة: `NDK_DEBUG=0` مكافئة `APP_OPTIM=release`، ويتم التجميع مع `-O2`. `NDK_DEBUG=1` تعادل `APP_OPTIM=debug` في `Application.mk`، ويتم التجميع باستخدام `-O0`. لمزيد من المعلومات عن "APP_OPTIM"، يُرجى الاطّلاع على Application.mk.
بناء الجملة في سطر الأوامر هو، على سبيل المثال:
$ ndk-build NDK_DEBUG=1
المتطلبات
أنت بحاجة إلى GNU Make 4 لاستخدام ndk-build أو NDK بشكل عام. يتضمن NDK
من صنع GNU Make واستخدام ذلك ما لم يتم تعيين $GNUMAKE
متغير البيئة للإشارة إلى العلامة التجارية غير المناسبة.
قواعد بيانات تجميع JSON
في لعبة NDK r18 والإصدارات الأحدث، يمكن أن تنشئ لعبة ndk-build قاعدة بيانات تجميع JSON.
يمكنك استخدام ndk-build compile_commands.json
لإنشاء قاعدة البيانات.
بدون إنشاء الرمز، أو ndk-build GEN_COMPILE_COMMANDS_DB=true
إذا
نريد إنشاء قاعدة البيانات وإنشائها كتأثير جانبي.