Kural kodumda ifeq kullanmaya çalışıyorum ve sorun yaşıyorum. Ben girintileri kullanmadığınızda, o zaman olsun,Makefile ifeq problem
"/bin/sh: -c: line 0: syntax error near unexpected token `mcc.exe,mcc.exe'
/bin/sh: -c: line 0: `ifeq(mcc.exe,mcc.exe)'"
Ama: Ben bu çalıştırdığınızda
$(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
, alıyorum: Bu benim ile sorun yaşıyorum kuraldır "Makefile: 77 : * eksik ayırıcı. Dur. "
Cygwin'de GNU make 3.81 kullanıyorum. Ifeq ile ilgili tüm sayı iki maket için aynı Makefile sahip olduğum gerçeğinden geliyor ve bunlardan biri (mcc.exe) /cygdrive/c/.../something yolları ile baş edemiyor, ancak bunun yerine c olmalıdır: /.../bir şey yolu. Bu konuda çalışmak için başka bir yol biliyorsanız, ben de çok minnettar olurum!
Teşekkürler!
Cevabı buldum! Herhangi bir ihbar olmamalı, ama ifeq ve açık parantez arasında boşluk olmalı '('.. Sorun çözüldü! Umarım bu birilerine yardım eder ... – Nikola
Bu beni biraz şaşırttı, teşekkürler. – Sam