/ / कोड के लिए सीएमके :: ब्लॉक - कैसे एक Makefile नहीं मिल - cmake, mingw, कोडब्लॉक, कोर्टेक्स- m3

कोड के लिए CMake:: ब्लॉक-कैसे एक Makefile-CMake, mingw, codeblocks, प्रांतस्था-एम 3 नहीं मिलता है

यहाँ मेरा सेटअप है: विंडोज 7 x64, मिंगडब्ल्यू, मिसिस, सीएमके, फ्रीस्केल किनेटिस एसडीके, कोड :: ब्लॉक

मैं सीएमके द्वारा स्थापित प्रोजेक्ट सेटिंग्स को एक उचित कोड में स्थापित करने की कोशिश कर रहा हूं :: ब्लॉक प्रोजेक्ट। जब मैंने प्रदान किया संशोधित build_debug.bat के साथ फाइल करें -G "CodeBlocks - Unix Makefiles", यह वास्तव में एक पैदा करता है .cbp फ़ाइल, साथ ही सामान्य Makefile (और यह परियोजना का निर्माण करता है)। हालाँकि जब मैं इसे खोलता हूं .cbp फ़ाइल में कोड :: ब्लॉक, यह मूल रूप से केवल इंगित करता है Makefile, और परियोजना का निर्माण सिर्फ चलता है make पर Makefile.

अगर मैं "यह एक कस्टम मेकफाइल है" का चयन रद्द करता हूंप्रोजेक्ट विकल्प, और एक प्रोजेक्ट फाइल को एक सामान्य IDE की तरह प्रोजेक्ट ट्री में जोड़ें, यह "सही तरीके से निर्मित नहीं होता है, अर्थात फाइल, लाइब्रेरी, लिंकर स्टफ, कम्पाइल ऑप्शन इत्यादि को प्रोजेक्ट में ही आयात नहीं किया जाता है।" ऐसा लगता है कि परियोजना मूल रूप से मेकफाइल के लिए एक धारक है, इसलिए आईडीई के रूप में इसका बहुत लाभ नहीं है।

बेशक अगर मैं स्रोत फ़ाइल को मूल में जोड़ता हूं CMakeLists.txt जो वितरण का हिस्सा है, और रेरून सेमीके (बिल्ड_डबग.बैट फ़ाइल के माध्यम से), तो यह ठीक काम करता है।

तो क्या "असली" आईडीई प्राप्त करने का कोई तरीका हैCMake से विन्यास? मैं जवाब का अनुमान लगा रहा हूं, क्योंकि "वास्तविक" आईडीई कॉन्फ़िगरेशन एक स्थिर चीज है, और एक मेकफाइल एक सामान्य (ट्यूरिंग पूर्ण) प्रोग्राम है, इसलिए इसे स्वचालित रूप से बनाने का कोई तरीका नहीं है, हालांकि मुझे 99 के लिए संदेह है आपके द्वारा निर्दिष्ट किए जा रहे मामलों में से% में केवल निर्देशिकाएं, काम की फाइलें और संकलक विकल्प शामिल हैं, इसलिए किसी भी सामान्य प्रोग्रामबिलिटी की वास्तव में आवश्यकता नहीं है।

मैं शायद यह पता लगाने की कोशिश कर सकता हूं कि गहराई कहां हैअस्पष्ट gcc कॉल में उनकी फ़ाइलें शामिल हो रही हैं, जो लिबास में लिंक की जा रही हैं, और कौन से संकलन विकल्प का उपयोग किया जा रहा है, और उस सभी सामान को मैन्युअल रूप से एक मूल कोड में जोड़ें :: ब्लॉक परियोजना, लेकिन यह होने के उद्देश्य को पराजित करता है। पहले से ही पैकेज प्रदाताओं द्वारा मेरे लिए किया गया था, और एक अलग सीपीयू या विकास बोर्ड के लिए निर्माण करते समय बहुत थकाऊ हो जाता है।

धन्यवाद

उत्तर:

जवाब के लिए 0 № 1
  1. "वास्तविक विन्यास" हैCMakeLists.txt, और आप जरुरत प्रोजेक्ट कॉन्फ़िगरेशन को संपादित करते समय CMakeLists को संशोधित करने के लिए। सीएमके द्वारा निर्मित दोनों मेकफाइल्स और आईडीई सेटिंग्स अस्थायी हैं और आपको उन्हें संपादित नहीं करना चाहिए।

  2. कुछ IDE सीधे प्रोजेक्ट कॉन्फ़िगरेशन को प्रबंधित करने में सक्षम हैं CMakeLists.txt