मैं इस तरह एक configure.ac फ़ाइल बनाई:कॉन्फ़िगरेशन से पूरी तरह से विस्तारित चर कैसे प्राप्त करें?
AC_INIT()
set
इसका उद्देश्य हर उपलब्ध वातावरण चर कॉन्फ़िगर स्क्रिप्ट set
का उपयोग कर बनाता है मुद्रित करने के लिए है, इसलिए मैं इस कार्य करें:
[email protected]:~$ autoconf
[email protected]:~$ ./configure
जो
build=
cache_file=/dev/null
IFS='
'
LANG=C
LANGUAGE=C
datarootdir='${prefix}/share'
mandir='${datarootdir}/man'
no_create=
वैरिएबल का एक गुच्छा प्रिंट करता है अब तक इतना अच्छा है। समस्या है:
- मैं
${prefix}/share
की तरह चर का विस्तार करना चाहते हैं - लेकिन एक फ़ाइलexample.sh
को सब कुछ पाइपिंग और पार्टी का उपयोग कर काम नहीं करता है यह क्रियान्वित करने, क्योंकि पार्टीUID
और की तरह केवल पढ़ने के लिए चर को संशोधित करने के बारे में शिकायत विस्तार स्वयं ही काम नहीं कर रहा है। - मैं इस जहां विस्तार से काम करता है के लिए एक
makefile
उपयोग करने की कोशिश, लेकिन यह नई-पंक्तियों के बारे में तार में, जैसे ऊपर उत्पादन में लाइनIFS=' causes an error message Makefile:24: *** missing separator. Stop.
किसी को कॉन्फ़िगर करने के एक पूरी तरह से विस्तृत संस्करण प्राप्त करने के एक विचार है शिकायत उत्पादन?
हाय! क्या आप समझा सकते हैं कि आप ऐसा क्यों करना चाहते हैं? आपका प्रश्न लगता है जैसे आप किसी अन्य समस्या को हल करने की कोशिश कर रहे हैं। (उदाहरण के लिए यदि आप '$ डेटादाइर' जैसे चर के विस्तारित मान को पुनर्प्राप्त करना चाहते हैं, तो इसके लिए आसान तरीके हैं।) – adl
मैं पर चल रहे लिनक्स सिस्टम से स्वतंत्र शैल स्क्रिप्ट टेम्पलेट्स बनाना चाहता हूं, इसलिए मैं एक सर्वर स्थापित करने के लिए स्क्रिप्ट बना सकते हैं और एक दूसरे स्क्रिप्ट के लिए एक ही स्क्रिप्ट का उपयोग कर सकते हैं, जिसमें केवल कुछ पैरामीटर के संशोधन की आवश्यकता होती है टेम्पलेट इंजन आईएम केवल स्क्रिप्ट के चरों को खोजने/प्रतिस्थापित करने के लिए का उपयोग करके मुझे इंजन को प्रारंभ करने की आवश्यकता है वेरिएबल्स या वे –
@adl को प्रतिस्थापित नहीं करेंगे, आप समझ सकते हैं कि इससे निपटने का 'आसान' तरीका क्या है। मैं इस समस्या से भी जूझ रहा हूं –