我尝试编写一个makefile,但被卡住了。
在此项目中,应该使make生成/更新.zip文件,该文件以包含makefile的目录命名。
MyWorkingDirectory /-> MyWorkingDirectory.zip
有人在这里给了我一些代码,但是失败了 / bin / sh:-c:ligne 0:意外令牌“(”
附近的语法错误CIBLE:= $(shell basename "`pwd`".zip)
SRC=blabla
OBJ=blabla
all: $(CIBLE)
$(CIBLE): $(OBJ)
rm $@ 2>/dev/null;zip -j $@ $^
我有GNU make 4.2.1
谢谢!
答案 0 :(得分:0)
您还可以通过以下方式获取当前目录的名称:
CIBLE := $(notdir $(abspath .))
这会绕过外壳,这可能是您遇到的问题。
答案 1 :(得分:0)
第一行不是问题...
在makefile中,我引用了所有$ @
rm "$@" 2>/dev/null;zip -j "$@" $^
并且我确保CIBLE的名称中没有括号。 我想括号是问题。
谢谢大家。