Explanation of circular dependency in make

Make me think that I have a circular dependency:

$ make blah > /dev/null make[1]: Circular all <- all dependency dropped. 

Is there a way to make make print the path that it is circular? This is a very large and complex Makefile that I did not write, and I find it almost useless to figure it out manually.

Any other technologies that people have for solving circular dependencies?

Thanks.

+4
source share
1 answer
 make[1]: Circular all <- all 

Ok, two things:

1) all <- all means all the way. That's right, all is a prerequisite of all .

2) make[1] means that it is a recursive Make. Somewhere in your makefile there is a $(MAKE) all command (probably hidden by variable names, functions, arguments, etc.).

Does it help?

+5
source

All Articles