Hello all,
I recently downloaded RSYNC 2.5.5 and had a problem compiling on a RedHat
5.2 i386 system (I know its old but my co-located machine is ancient and I
can't easily upgrade it).
Anyhow, I did:
./configure --prefix=/usr/services/rsync
And make fails because of the file lib/addrinfo.h not
defining things correctly. The configure script generated:
#define HAVE_GETADDRINFO 1
/* undef HAVE_GETADDRNAME */
Yet the way that works out I get undefined references to the NI_xxx
constants in lib/addrinfo.h. They aren't in the standard headers for RH
5.2.
So I tried disabling HAVE_GETADDRINFO and then compiling all that stuff
since it looked like the RH 5.2 libraries had those functions but in an
incompatible way.
Then I got a ton of compile errors because stuff in lib/getaddrinfo.c
conflicted with the standard headers. I managed to patch it together so it
does work, including defining a number of symbols with alternate names at
appropriate spots to "fake out" the compiler and linker.
This probably needs to be fixed as the replacement approach to the C
library doesn't work right.
To probably compile somewhat portably, all of the #define's must be
preceeded with #undef's and all of the symbols should include a prefix
like rsync_ to avoid conflicts (including the structure tags).
Thanks,
Mark G.