CMake هو نظام بناء تعريفي مفتوح المصدر متعدد المنصات يمكنه إنشاء البرامج واختبارها وتعبئتها. يمكن استخدامه لدعم العديد من بيئات البناء الأصلية بما في ذلك make وxcode من Apple وMicrosoft Visual Studio.
يتضمن هذا المستودع بعض الأمثلة على تكوينات CMake الحديثة التي التقطتها عند استكشاف استخدامها في العديد من المشاريع. تم وضع الأمثلة في تنسيق تعليمي مثل. الأمثلة الأولى أساسية للغاية وتزداد تعقيدًا ببطء بالاعتماد على الأمثلة السابقة لإظهار حالات الاستخدام الأكثر تعقيدًا.
تم اختبار هذه الأمثلة على Ubuntu 16.04 ولكن يجب أن تعمل تحت أي نظام Linux يدعم CMake v3.5+.
يعمل هذا الفرع مع الإصدار 3.5 من CMake وما بعده.
للحصول على الأمثلة التي تستخدم الإصدار 2.x من CMake، راجع الفرع v2-style-includes.
للحصول على الأمثلة التي تستخدم الإصدار 3.0 من CMake، راجع الفرع v3.0-minimum
المتطلبات الأساسية لمعظم الأمثلة هي:
كميك v3.5+
مترجم c++ (الافتراضي هو gcc)
يصنع
أسهل طريقة لتثبيت ما ورد أعلاه على Ubuntu هي كما يلي
$ sudo apt-get install build-essential
$ sudo apt-get install cmake
قد تتطلب بعض الأمثلة المحددة أدوات أخرى بما في ذلك:
يعزز
$ sudo apt-get install libboost-all-dev
بروتوبوف
$ sudo apt-get install libprotobuf-dev $ sudo apt-get install protobuf-compiler
com.cppcheck
$ sudo apt-get install cppcheck
رنة
$ sudo apt-get install clang-3.6
النينجا
$ sudo apt-get install ninja-build
كونان
$ sudo apt-get install python3 python3-pip $ سودو pip3 تثبيت كونان
يتم إنشاء حاويات Docker مع جميع المتطلبات والإصدارات المختلفة من CMake للمساعدة في تسهيل اختبار الأمثلة. هذه متوفرة من أمثلة matrim/cmake لمستودع docker hub.
لإنشاء مجموعة كاملة من حالات اختبار أمثلة cmake، يمكنك تشغيل:
docker run -it matrim/cmake-examples:3.5.1
cd ~
git clone https://github.com/ttroy50/cmake-examples.git code
cd code
./test.sh
لمزيد من التفاصيل حول إنشاء ملفات dockerfiles لحاويات الإرساء وتشغيلها.
هناك العديد من البرامج التعليمية والأمثلة الخاصة بـ CMake عبر الإنترنت. تتضمن القائمة أدناه روابط لبعض هذه الروابط التي وجدتها مفيدة في رحلة CMake الخاصة بي.
شرائح CMake الحديثة
مدونة rix0r الحديثة CMake
البرنامج التعليمي الرسمي لـ CMake
ويكي CMake الرسمي
صنع متغيرات مفيدة
ديريك مولوي - مقدمة إلى CMake
مشاريع C++ المعيارية
أنماط مكافحة CMake الشائعة
استخدام محلل clang الثابت مع CMake
التحليل الثابت باستخدام CDash - يتضمن بعض المعلومات حول استخدام CppCheck مع CMake
نصائح صنع
جون لامب - دروس CMake
توثيق كونان