यह सबसे अच्छी विधि है जो मैं हाल ही में लेकर आया हूं:
बिल्ड विकल्पों में, बैच फ़ाइल बनाएँ चुनें।
जब आप आईडीई से एक बिल्ड शुरू करते हैं, तो आईडीई में सेट किए गए विकल्पों के आधार पर कई टेक्स्ट फ़ाइलों के साथ एक बैच फ़ाइल बनाई जाती है। आपको स्रोत नियंत्रण में इन IDE जनरेट की गई फ़ाइलों को ट्रैक करने की आवश्यकता है:
- *।बल्ला
- * .ini
- *।__मैं
- *।_मैं एक
- * .lnp
- * .sct
तब foo.bat का निर्माण स्क्रिप्ट से किया जा सकता है।
हालांकि यह अतिरिक्त फ़ाइलों का निर्माण करता है जिन्हें स्रोत नियंत्रण में ट्रैक करने की आवश्यकता होती है यदि आप उत्पन्न बैच फ़ाइल से मज़बूती से निर्माण करना चाहते हैं, तो यह Keil प्रोजेक्ट फ़ाइल (foo.uvproj) और IDE पर भरोसा करने की आवश्यकता को दूर करता है। मुझे मतभेदों की तुलना करना आसान लगता है, और इस प्रकार परिवर्तन को ट्रैक की गई टेक्स्ट फ़ाइलों (* .__ i) में बदल दिया जाता है, जिसमें .uvproj फ़ाइल की तुलना में संकलक होते हैं। इसके अतिरिक्त, बैच फ़ाइल सीधे विभिन्न उपकरणों को बुलाती है, अर्धसूत्रीविभाजन, आर्मक, आर्मिलिंक, सीधे। यह आपको उन चरणों में से प्रत्येक के प्रत्यक्ष उत्पादन के साथ-साथ यदि आवश्यक हो तो भविष्य में एक अलग उपकरण श्रृंखला में एक परियोजना को स्थानांतरित करने के लिए एक उचित रूप से बेहतर क्षमता देता है।
मुझे पता है कि यह उत्तर मेरे मूल प्रश्न की तरह लगता है, लेकिन मैं वास्तव में केइल के उपकरण के साथ एक स्क्रिप्टेड बिल्ड को चलाने के बेहतर तरीके के बारे में नहीं जानता। मैंने यह देखने के लिए कहा कि दूसरों से क्या हो सकता है। मैं @digikata के उत्तर से पूरी तरह असहमत नहीं हूं, लेकिन मैं कंपाइलर झंडे और मेमोरी मैप को ट्रैकिंग के लिए एक आसान प्रारूप में रखना पसंद करता हूं और एक ऑल-इन-वन संकलन शुरू करने के बजाय संकलन के लिए अधिक यूनिक्स शैली के टूल का उपयोग करना चाहता हूं। आईडीई के साथ। मुझे लगता है कि IDE से ऑल-इन-वन संकलन मेरे कार्य केंद्र में अच्छी तरह से काम करता है, लेकिन बिल्ड सर्वर के लिए नहीं।
संपादित करें : बिल्ड सर्वर विंडोज सर्वर 2003 पर चलता है। मुझे यह स्वीकार करना चाहिए कि मैंने बैच फ़ाइल के बजाय आईडीई कमांड लाइन इंटरफ़ेस का उपयोग करने से संबंधित किया है। यह सिर्फ प्रबंधित करना बहुत मुश्किल हो गया।