The Samba-Bugzilla – Bug 2357
error when compiling rsync under Windows Services for Unix
Last modified: 2005-04-01 11:25:37 UTC
Error: "undefined reference to `_makedev'" occurs when compiling under Windows
Services for Unix 3.5.
To remedy, simply edit flist.c and change every occurrence of 'makedev' to
'mkdev'. Once you run make again, it compiles fine and runs on Windows with no
problems (so far).
What I meant to ask was, can this be automatically determined somehow so other
users of Windows Services for Unix don't have to hack flist.c like I did?
The CVS version has this code in rsync.h to try to deal with this:
#if !defined makedev && defined mkdev
#define makedev mkdev
So, under Windows Services for Unix, is mkdev not a define? I suppose we could
change the #if to something like this:
#if !defined makedev && (defined mkdev || defined WIN32)
Does that work? Any better ideas?
I put a fix for this into 2.6.4pre1, so I hope that this is now resolved. If
not, reopen the bug.