I have no idea how to troubleshoot errors that arise while a project is building. Any suggestions for dealing with this? Language is Java.
make[1]: *** No rule to make target `org/zeromq/ZMQ$Context.class', needed by `all'. Stop.
Per below suggestion got this output from make -d:
Considering target file `org/zeromq/ZMQ$Context.class'.
File `org/zeromq/ZMQ$Context.class' does not exist.
Looking for an implicit rule for `org/zeromq/ZMQ$Context.class'.
Trying pattern rule with stem `ZMQ$Context.class'.
Trying implicit prerequisite `org/zeromq/ZMQ$Context.class.cpp'.
Trying pattern rule with stem `ZMQ$Context.class'.
Trying implicit prerequisite `org/zeromq/ZMQ$Context.class.o'.
Trying pattern rule with stem `ZMQ$Context.class'.
Trying implicit prerequisite `org/zeromq/ZMQ$Context.class,v'.
...
Must remake target `org/zeromq/ZMQ$Context.class'.
make[1]: *** No rule to make target `org/zeromq/ZMQ$Context.class', needed by `all'. Stop.
So, looks like make isn’t smart enough to look in ZMQ.java for ZMQ$Context.class ‘s definition. Is this a problem with my version of make or a problem in the makefile the library owner supplied me?
For sure a short question. The answer may be
man make.You will discover
-doption for generic debug Make verbosity or even--debug=FLAGto reduce output to less verbose debug levels.In your specific case, Make try to find the source file required to generate
org/zeromq/ZMQ$Context.classand the Makefile rule may not be clever enough to guess it must be compiled fromorg/zeromq/ZMQ.java.