मैं इसे make
पर तर्क के रूप में पास करके एक सी मैक्रो को परिभाषित करना चाहता हूं, जिसे कमांड लाइन से कहा जाता है।मैक्रो परिभाषा को तर्क के रूप में कैसे पारित किया जा सकता है?
पृष्ठभूमि: मैं अपने सी स्रोत कोड में शामिल होने के लिए निर्देश #define ENABLE_OPT 1
निर्देश देना चाहता हूं जब एक निश्चित निर्माण विकल्प चुना जाता है। इस प्रकार, मैं इसे कोड कोड या मेकफ़ाइल संशोधित करने के बजाय make
कमांड लाइन के माध्यम से किया जाना चाहता हूं।
यह कैसे प्राप्त किया जा सकता है? मुझे लगता है कि make -DENABLE_OPT=1 -f Makefile
त्रुटियों को फेंकता है कि 'ई', 'एन' आदि बनाने के लिए अवैध तर्क हैं।
बनाने CFLAGS = "- DENABLE_OPT = 1" – Serge
संबंधित प्रश्न http://stackoverflow.com/questions/9052792/how-to-pass-macro-definition-from-make-command-line-arguments-d-to -सी-स्रोत –
धन्यवाद। मेरे पास मेकफ़ाइल में केवल LOCAL_CFLAGS परिभाषित हैं, इसलिए यह कुछ भी ओवरराइड नहीं करेगा। बढ़िया है! –