2012-10-11 11 views
10

Po uruchomieniu pod komendą powłoki działa poprawnie. ale jeśli piszę to w Makefile i wywołuję go poleceniem "make", to nie działa.Używanie nawiasów klamrowych do rozszerzania zmiennych w pliku Makefile nie działa

cp wpa_ {cli, petent, hasło, event}/usr/local/bin/

błąd po "make" komenda:

cp: nie można wykonać stat na `wpa_ { CLI, petent, hasło, event} ': Nie ma takiego pliku lub katalogu

Co mogę zrobić, aby pracować z Makefile? Używam Ubuntu 12.04. Ten sam plik Makefile działa na innych dystrybucjach Linuksa.

Odpowiedz

20

Domyślnie używa starej powłoki Bourne'a (/ bin/sh), która nie obsługuje rozszerzania nawiasów. Ustaw zmienną SHELL w pliku Makefile na/bin/bash, jeśli nie została jeszcze ustawiona.

+1

, więc powinniśmy dodać 'SHELL =/bin/bash' jako pierwszą linię? –

Powiązane problemy