Date: Sun, 28 May 1995 09:30:52 +0300 From: eliz AT is DOT elta DOT co DOT il (Eli Zaretskii) To: djgpp AT sun DOT soe DOT clarkson DOT edu, jips AT sol DOT unizar DOT es Subject: GNU Makefiles' woes (was: No subject) > LDDIRS = -Ic:\c\djgpp\contrib\libgrx\include -Lc:\c\djgpp\contrib\libgrx\lib > [snip] > Everything is Ok except the final step, when it tries to link with ld. > It gives this Output: > > ld.exe: cannot open -lgrx: file not found > make.exe: *** [proplot] Error 1 This is a ususal stumbling point for every new user of GNU Make who is a recent DOS convert: you must either use the forward slash `/' or protect the backslash with another backslash. Backslash is an escape character in GNU Make, so they got eaten by Make and gcc never sees them. One of these should work: LDDIRS = -Ic:\\c\\djgpp\\contrib\\libgrx\\include -Lc:\\c\\djgpp\\contrib\\libgrx\\lib or LDDIRS = -Ic:/c/djgpp/contrib/libgrx/include -Lc:/c/djgpp/contrib/libgrx/lib (the second variant is the recommended one, since it's portable to Unix). > makefile:10: *** missing separator. Stop. This means some of your rules start with blanks, not tabs. GNU Make insists on a TAB as first character in every command in the rule.