ملف أدوات CMake لـ IOS (+ Catalyst) و WatchOS و TVOS و MacOS Development مع دعم محاكي كامل وخيارات قابلة للتجميل!
ملاحظة : تغيير -DPLATFORM إلى قيمة قابلة للتطبيق إذا استهدفت منصة أخرى.
cd example/example-lib
cmake -B build -G Xcode -DCMAKE_TOOLCHAIN_FILE=../../ios.toolchain.cmake -DPLATFORM=OS64
cmake --build build --config Releaseسيؤدي ذلك إلى بناء المكتبة للمنصة المحددة. في هذه الحالة ، iOS مع Arm64 العمارة.
ستؤدي الخيارات التي تسمى *Combined (OS64Combined و TVOSCOMBINED و WATCHOSCOMBINED) إلى بناء مكافآت كاملة للدهون للمنصة المحددة. تتضمن هذه المشاريع الدهنية شرائح لكل من الجهاز والمحاكاة ، مما يجعل توزيع واستخدام المكتبة أكثر بساطة!
مثال:
cmake . -G Xcode -DCMAKE_TOOLCHAIN_FILE=../../ios.toolchain.cmake -DPLATFORM=OS64COMBINED
cmake --build . --config Release
cmake --install . --config Release # Necessary to build combined libraryملاحظة : تعمل الخيارات المدمجة فقط مع مولد Xcode (-G Xcode) على إصدارات CMake 3.14+!
XCODE_VERSION - رقم الإصدار (لا يشمل إصدار البناء) من XCODE المكتشف.
SDK_VERSION - نسخة من SDK المستخدمة.
CMAKE_OSX_ARCHITECTURES - يتم تجميع الهياكل (التي تم إنشاؤها من النظام الأساسي).
APPLE_TARGET_TRIPLE - المستخدمة بواسطة أنظمة بناء autoconf.
-DENABLE_BITCODE=(BOOL) - معطل افتراضيًا ، حدد TRUE أو 1 لتمكين BitCode
-DENABLE_ARC=(BOOL) - ممكّن افتراضيًا ، حدد خطأ أو 0 لتعطيل القوس
-DENABLE_VISIBILITY=(BOOL) - معطل بشكل افتراضي ، حدد صوابًا أو 1 لتمكين دعم الرمز الرمزي
-DENABLE_STRICT_TRY_COMPILE=(BOOL) - معطل افتراضيًا ، حدد صوابًا أو 1 لتمكين عمليات التحقق الصارمة للمترجم (سيتم تشغيل الرابط على جميع عمليات التحويلات المترجم كلما لزم الأمر)
-DARCHS=(STRING) - القيم الصالحة هي: ARMV7 ، ARMV7S ، ARM64 ، I386 ، x86_64 ، ARMV7K ، ARM64_32. بشكل افتراضي ، سيتم إنشاء جميع البنية الصالحة بناءً على -DPLATFORM (انظر أعلاه)
لدمج جميع المنصات في نفس المكتبة الدهنية ، إما بناء أي من أنواع المنصات " المدمجة " أو استخدام أداة LIPO. مزيد من المعلومات حول كيفية الجمع بين المكتبات مع Lipo متاح بسهولة على الشبكة.