أهلا،
أرغب في استخدام ملفات .h
و .c.
التي تم إنشاؤها بواسطة خدمة الويب في مشروعي ولكني لا أريد تخزين كل ملف 10k ~ في الريبو الخاص بي.
هل هناك طريقة لتضمين هذا و "إنشائه" عبر CMAKE وإنشاء الملفات المطلوبة (على غرار GLFW)؟
شكرا لمشروعك
انه من الممكن. قم بإنشاء دليل فرعي في مشروعك وأضف CMakeLists.txt
فيه مع الملفات:
cmake_minimum_required(VERSION 3.0)
project(Glad)
add_library(glad include/glad/glad.h src/glad.c)
target_include_directories(glad PUBLIC include/)
ثم في ملفك الرئيسي CMakeLists.txt
ضع:
add_subdirectory(glad/)
target_link_libraries(<your target> PRIVATE glad)
أو شيء من هذا القبيل. هناك مجموعة من الطرق لتحقيق ذلك.
Shimmen شكرا على الشرح!
يمكنك أيضًا الاطلاع على المشكلة https://github.com/Dav1dde/glad/issues/174 حيث أضاف بعض الأشخاص الرائعين المزيد من الطرق للقيام بذلك.
أنا شخصياً أقوم بتضمين الملفات التي تم إنشاؤها على الرغم من ذلك ، يجب فرز الرموز ، لذا إذا قمت بترقية الملفات التي تم إنشاؤها في وقت ما ، فستحصل على أدنى حد من الاختلافات ، وهذا يعني أيضًا أنه ليس لديك اعتماد على الموارد الخارجية و Python.
لقد أدركت للتو أنني لم أقدم إجابة للسؤال الأصلي على الإطلاق! أنا شخصياً أحب الاحتفاظ بالأشياء المبهجة خارج دليل المصدر الخاص بي وخارج خطوة الإنشاء في الملف التنفيذي الرئيسي ، لذلك هذا ما يفعله مثالي.
سأفترض أنه تم الرد على هذا ، إذا لم يكن كذلك ، فلا تتردد في إعادة الفتح.
أتفهم أنه من المعتاد وضع الملفات التي تم إنشاؤها في دليل التضمين الخاص بك ، ولكن هل هناك طريقة لإنشاء هذا عند إنشاء CMake؟
لا أعتقد أن طلب بايثون هو صفقة كبيرة ، إنه مكان شائع جدًا. وجود الخيار لطيف على الأقل.
DerekCresswell ، نعم ، يمكنك تشغيل المولد على بناء ، فهناك CMakeLists.txt
في جذر هذا المستودع الذي يجب أن يسمح لك بالقيام بذلك (iirc عبر add_subdirectory
).
لقد كنت أعمل أيضًا على glad2 الذي يحتوي على CMakeLists.txt
مع مثال هنا .
التعليق الأكثر فائدة
انه من الممكن. قم بإنشاء دليل فرعي في مشروعك وأضف
CMakeLists.txt
فيه مع الملفات:ثم في ملفك الرئيسي
CMakeLists.txt
ضع:أو شيء من هذا القبيل. هناك مجموعة من الطرق لتحقيق ذلك.