मैं अपने नियम पैटर्न में ifeq का उपयोग करने की कोशिश कर रहा हूं और मुझे इसके साथ समस्याएं हैं। यह नियम मैं साथ परेशानी हो रही हूँ:मेकफ़ाइल ifeq समस्या
$(OBJS): $(OBJDIR)/%.o : ../%.c
@mkdir -p $(dir [email protected])
ifeq(mcc.exe,$(CC))
o_file:=$(shell echo [email protected] | sed -e 's/\/cygdrive\///' | sed -e 's/\([a-zA-Z]\)/\1:/')
$(CC) $(CFLAGS) $< -o $(o_file)
else
$(CC) $(CFLAGS) $< -o [email protected]
endif
जब मैं इस चलाने के लिए, मैं:
"/bin/sh: -c: line 0: syntax error near unexpected token `mcc.exe,mcc.exe'
/bin/sh: -c: line 0: `ifeq(mcc.exe,mcc.exe)'"
लेकिन, जब मैं दांतेदार बनाना उपयोग नहीं करते हैं, तो मैं मिलता है: "Makefile: 77 : * लापता विभाजक। रोको। "
मैं जीएनयू का उपयोग कर रहा हूं 3.81 सिगविन पर। Ifeq के साथ पूरा मुद्दा इस तथ्य से आता है कि मेरे पास दो टूलचेन्स के लिए मेकफ़ाइल समान है और उनमें से एक (mcc.exe) /cygdrive/c/.../something पथों का सामना नहीं कर सकता है, लेकिन इसके बजाय सी होना चाहिए: /.../something पथ। यदि आप इस के आसपास काम करने के किसी अन्य तरीके से जानते हैं, तो मैं भी बहुत आभारी रहूंगा!
अग्रिम धन्यवाद!
मुझे जवाब मिल गया है! कोई संकेत नहीं होना चाहिए, लेकिन ifeq और खुले ब्रैकेट '('। 'समस्या हल हो गई है! उम्मीद है कि यह किसी की मदद करता है ... – Nikola
यह मुझे थोड़ा सा भी धन्यवाद, धन्यवाद – Sam