>>45 You use strerror() but you forgot to include <string.h>
Add it yourself. In fact, let's see your version of link.c
Moreover, 1 is not portable to return from main. It does not guarantee a meaningful value to the OS.
RTFS. Anything >0 means an error occurred, now are you going to argue that 1<=0 ?