gcc makefile依赖不会生成

时间:2013-10-19 15:20:07

标签: gcc makefile

我有以下简单的makefile

#all: binsem.a ut.a ph 
FLAGS = -Wall  -L./

binsem.a:
    gcc $(FLAGS)  -c binsem.c
    ar rcu libbinsem.a binsem.o
    ranlib libbinsem.a 


ut.a:
    gcc $(FLAGS)  -c ut.c
    ar rcu libut.a ut.o
    ranlib libut.a 

clean:
    rm -f *.o 
    rm -f a.out
    rm -f *~
    rm -f ph
    rm -f *a 

问题是它只生成binsem.a而不是ut.a,可能是因为依赖性问题。

我试着看着旗帜,但没有找到答案。

非常感谢。

1 个答案:

答案 0 :(得分:1)

默认情况下,如果未在命令行上指定目标,make将构建它找到的第一个目标(如果有任何依赖项,则构建它)。您的第一个目标是binsem.a,并且您没有列出任何依赖项,因此这是唯一可以构建的内容。

尝试在顶部添加此内容:

all: binsem.a ut.a

并提及其他目标中的依赖项:

binsem.a: binsem.c
...
ut.a: ut.c