मैं मेक फ़ाइल में स्ट्रिंग कैसे और कब उद्धृत करूं? सबसे अच्छा अभ्यास क्या है?जीएनयू मेकफ़ाइल स्ट्रिंग्स को कैसे और कब उद्धृत करें
उद्धरण का तरीका निम्नलिखित है?
$(warning $(shell ls -ld "$(CURDIR)"))
मैं बैश से परिचित हूं जहां आप आमतौर पर एम्बेडेड रिक्त स्थान की अनुमति देने के लिए चर उद्धृत करते हैं। क्या आप मेकफ़ाइल में ऐसा करते हैं?
मुझे स्ट्रिंग के साथ असाइनमेंट स्टेटमेंट कैसे करना चाहिए?
vara := "$(CURDIR)"
varb := $(CURDIR)
varc := /home/me/source
vard := "/home/me/source"
बराबर के बाद की जगह के बारे में क्या?
ifequ "$ (varx)" "ए" मेरे लिए भ्रम का आंशिक स्रोत था। – historystamp
इसका एक अपशॉट यह है कि _make_ फ़ाइल नामों में रिक्त स्थान का पालन नहीं कर सकता है। अंतरिक्ष सूची विभाजक है और जैसा कि मैड वैज्ञानिक कहते हैं-उद्धृत नहीं है। _make_ आमतौर पर बेकार टुकड़ों में ऐसे फ़ाइल नाम को तोड़ देता है। – bobbogo
ओपी के इरादे से प्रासंगिक नहीं हो सकता है, लेकिन अन्य उपयोगकर्ता यहां उतर सकते हैं और '$ (VARX)' और _shell variables_ जैसे '$$ {VARZ} 'के बीच भेद को समझ नहीं सकते हैं - डबल डॉलर चिह्न' $ $ 'जो कि उनके बीच _ और so_ के बीच अंतर करने के लिए उपयोग करता है जब आप एक चर के रूप में एक चर के रूप में एक चर चर को पास करना चाहते हैं ** बिना विस्तार के ** ** आप एकल उद्धरण, ईजी का उपयोग करना चाहेंगे:' $ ORIGIN 'गुजरना लिंकर के लिए, फिर 'cc-wl, -rpath =' $$ {ORIGIN} '-shared -fPIC -Wall $ (SRC) -o $ (DIR)/$ (LIB)' का उपयोग करके एकल कोट्स के साथ इसे रखने के लिए खोल में विस्तार –