実行時に次のことを行うメイクファイルを作成しようとしています。
CMVC_VIEW = ../../..
TB_DIR = $(CMVC_VIEW)/tarball_images
SMAC_TOOLS = $(TB_DIR)/smac_tools
SMAC_BIN = $(SMAC_TOOLS)/bin
DIR_LIST = $(TB_DIR) \
$(SMAC_TOOLS) \
$(SMAC_BIN)
install:
rm -f *.o
for DIR in $(DIR_LIST); do \
echo $${DIR}; \
chmod 2775 $${DIR}; \
done
ただし、makefile を実行すると、chmod: missing operand after というエラーが表示され2775
ます。$${DIR}
アクセス許可を変更する必要があるディレクトリに対応するパスが含まれているはずなので、なぜこれが起こっているのかわかりません。
$${DIR}
これは、静的ディレクトリ パスに置き換えると機能するようです。
この makefile の目的のために、DIR_LIST
空白で区切られたディレクトリのリストにマクロが割り当てられていると仮定します。