7/6/2004 ******** DESCRIPTION ----------- If you decided to update your cygwin lately, there is a good chance that running "make mica2" or the like will cause some of the files used in the compilation to be deleted. This could be *.nc files, *.h files, and possibly others. Worst of all, the deleted files may not necessarily be in the directory that your application resides in. THE PROBLEM ----------- When you update cygwin, the chain of compilation tools used to make a NesC application will have problems recognizing improperly formatted file paths. As of now, I do not know which package installed by cygwin does this (the cygwin package itself, or gcc, or others). In any case, /usr/local/bin/nescc calls 'cygpath -w' which produces path strings that are no longer properly recognized by the compilation tools. This affects: * nesc tools released with TinyOS-1.1 (rpm package Nesc-1.1-1w) and possibly ones later. * Cygwin downloaded after 7/2, and probably those downloaded a little before that (how far before? I don't know). THE FIX ------- * edit /usr/local/bin/nescc to use 'cygpath -m' instead of 'cygpath -w' This occurs on line 201. * restore any files that may have been deleted. The easiest way: use cvs update on your tinyos-1.x directory (and pray that no one committed broken files recently). ~ The most probable place for broken files is in the tinyos-1.x/tos directory and the directory where you tried to compile the application. ~ Losing files in the tinyos-1.x/tos directory may lead to random looking error messages (ex. if you lost tos.h, you will have a lot of strange errors complaining that only commands and events can be defined in interfaces in StdControl.nc. See cygpath_blink_compile_error.txt for a sample of the standard_error that was generated when compiling Blink.nc)