Marcio d'Avila
2004-Apr-05 22:06 UTC
Error trying to compile 2.6.0 on Solaris 9 Sparc with gcc 3.2
Hi. I'm trying to compile rsync 2.6.0 on Solaris 9 Sparc, using gcc 3.2. The configure script seems to run with no problem. But when I go ahead to make, I get the following error output: -----8<------------------------------------------------------------ gcc -I. -I. -g -O2 -DHAVE_CONFIG_H -Wall -W -c rsync.c -o rsync.o In file included from rsync.c:23: rsync.h:371: warning: no semicolon at end of struct or union rsync.h:371: parse error before "inode" rsync.h:373: parse error before "dev" rsync.h:373: warning: type defaults to `int' in declaration of `dev' rsync.h:373: warning: data definition has no type or storage class rsync.h:376: parse error before "rdev" rsync.h:376: warning: type defaults to `int' in declaration of `rdev' rsync.h:376: warning: data definition has no type or storage class rsync.h:382: `link' redeclared as different kind of symbol /usr/include/unistd.h:327: previous declaration of `link' rsync.h:384: parse error before '}' token rsync.h: In function `flist_up': rsync.h:464: dereferencing pointer to incomplete type rsync.c: In function `set_perms': rsync.c:175: dereferencing pointer to incomplete type rsync.c:178: dereferencing pointer to incomplete type rsync.c:188: dereferencing pointer to incomplete type rsync.c:189: dereferencing pointer to incomplete type rsync.c:189: dereferencing pointer to incomplete type rsync.c:194: dereferencing pointer to incomplete type rsync.c:198: dereferencing pointer to incomplete type rsync.c:199: dereferencing pointer to incomplete type rsync.c:217: dereferencing pointer to incomplete type rsync.c:219: dereferencing pointer to incomplete type rsync.c: In function `finish_transfer': rsync.c:265: dereferencing pointer to incomplete type *** Error code 1 make: Fatal error: Command failed for target `rsync.o' -----8<------------------------------------------------------------ The machine is a Sun Sparc Ultra 250. here is the "uname -a" output: SunOS suntst-2 5.9 Generic_112233-06 sun4u sparc SUNW,Ultra-250 I got the same error trying to compile rsync 2.6.1pre1. The first line on source-code which causes the error, line 371 of rsync.h, is a "INO64_T inode;" field inside the file_struct definition. Any help/advice will be very appreciated. Thanks in advance, Marcio d'Avila Systems and database administrator Brazil
Wayne Davison
2004-Apr-06 23:04 UTC
Error trying to compile 2.6.0 on Solaris 9 Sparc with gcc 3.2
On Mon, Apr 05, 2004 at 07:04:00PM -0300, Marcio d'Avila wrote:> I'm trying to compile rsync 2.6.0 on Solaris 9 Sparc, using gcc 3.2. > The configure script seems to run with no problem. > But when I go ahead to make, I get the following error output:I don't have access to any Solaris systems, so I can't be of direct help. I do know that we have a Solaris/gcc system in the samba build farm, so someone has gotten this working.> The first line on source-code which causes the error, line 371 of > rsync.h, is a "INO64_T inode;" field inside the file_struct definition.If you look up the INO64_T define, it is based on the uint64 define. That is defined in rsync.h based on various configure-determined flags (which you can find in config.h). You'll have to dig through these defines to see what definition your system is using and determine why that is wrong (and hopefully figure out what definition would be right). Once you get the right uint64 value, it would be nice to fix configure so that it determines this automatically. ..wayne..