2016-03-29 13 views
0

Makefile'de statik desen kurallarıyla otomatik değişkenler kullanıyorum, ancak parantezli dosya adları ile ilgili bir sorunum var. Parantez kabuk düzgün kaçtı ve ben kabuğundan bir sözdizimi hatası alıyorum değildir:Makefile otomatik değişkenleri dosya adlarında karakterlerden kaçmıyor

/bin/sh: -c: line 0: syntax error near unexpected token `(' 

make otomatik Dosya adlarında "kötü" karakterleri kaçmayı almanın bir yolu var mı? $(<) ve $(@) gibi parantezleri kullanmayı denedim, ancak bir fark yaratmıyor gibi görünüyor.

cevap

1

Otomatik değişkenler etrafında kabuklara geçirdiğinizde bazı tek tırnak işaretleri koyabilir misiniz? Yani, $< yerine, '$<''u deneyin. Bunu, tek bir dosya adından daha büyük bir değere sahip bir şekilde yapmanız gerekiyorsa, ör. $+ sonra $(patsubst %,'%',$+)

kullanabilirsiniz