You should really be using strcat. For instance,
Code:
strcpy(dest, dirName);
strncat(dest, "/", 1);
strncat(dest, trackerName, strlen(trackerName));
It can only be sheer luck for your third strncat to even have a chance of working -- the point of strncat is that it starts where the string currently ends, i.e. at the \0 end-of-string marker. But your second strncat deliberately destroyed the \0 end-of-string marker without putting a new one in....