"Failed to create rounding.h!" during make

Randy Rue rrue at fhcrc.org
Tue Apr 3 15:15:01 MDT 2012


Hello All,

I'm attempting to compile rsync on Solaris 10 x86 to include atime
support.

I've managed to patch the source, and install gcc and the necessary other
packages necessary to get as far as ./configure successfully (I'm afraid
I'm more of a linux than a solaris guy).

I'm unable to "make" the Makefile. Did some STFW'ing and have found
several variations of this problem. Other mentions have included
redirecting the output of this part of the code to stdout or a file
instead of /dev/null but it looks like my Makefile includes this already:
it redirects to rounding.out and cats that file after it fails. That is,
this section of Makefile:

----------------
flist.o: rounding.h

rounding.h: rounding.c rsync.h
        @for r in 0 1 3; do \
            if $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o rounding
-DEXTRA_ROUNDING=$$r -I. $(srcdir)/rounding.c >rounding.out 2>&1; then \
                echo "#define EXTRA_ROUNDING $$r" >rounding.h; \
                if test -f "$$HOME/build_farm/build_test.fns"; then \
                    echo "EXTRA_ROUNDING is $$r" >&2; \
                fi; \
                break; \
            fi; \
        done
        @rm -f rounding
        @if test -f rounding.h; then : ; else \
            cat rounding.out 1>&2; \
            echo "Failed to create rounding.h!" 1>&2; \
            exit 1; \
        fi
        @rm -f rounding.out
-------------------

generates this output:

-------------------
-bash-3.00# make
In file included from /usr/include/sys/signal.h:34,
                 from /usr/include/signal.h:26,
                 from rsync.h:329,
                 from rounding.c:20:
/usr/include/sys/siginfo.h:259: error: parse error before "ctid_t"
/usr/include/sys/siginfo.h:292: error: parse error before '}' token
/usr/include/sys/siginfo.h:294: error: parse error before '}' token
/usr/include/sys/siginfo.h:390: error: parse error before "ctid_t"
/usr/include/sys/siginfo.h:392: error: conflicting types for `__proc'
/usr/include/sys/siginfo.h:261: error: previous declaration of `__proc'
/usr/include/sys/siginfo.h:398: error: conflicting types for `__fault'
/usr/include/sys/siginfo.h:267: error: previous declaration of `__fault'
/usr/include/sys/siginfo.h:404: error: conflicting types for `__file'
/usr/include/sys/siginfo.h:273: error: previous declaration of `__file'
/usr/include/sys/siginfo.h:420: error: conflicting types for `__prof'
/usr/include/sys/siginfo.h:287: error: previous declaration of `__prof'
/usr/include/sys/siginfo.h:424: error: conflicting types for `__rctl'
/usr/include/sys/siginfo.h:291: error: previous declaration of `__rctl'
/usr/include/sys/siginfo.h:426: error: parse error before '}' token
/usr/include/sys/siginfo.h:428: error: parse error before '}' token
/usr/include/sys/siginfo.h:432: error: parse error before "k_siginfo_t"
/usr/include/sys/siginfo.h:437: error: parse error before '}' token
In file included from /usr/include/signal.h:26,
                 from rsync.h:329,
                 from rounding.c:20:
/usr/include/sys/signal.h:85: error: parse error before "siginfo_t"
In file included from rsync.h:329,
                 from rounding.c:20:
/usr/include/signal.h:111: error: parse error before "siginfo_t"
/usr/include/signal.h:113: error: parse error before "siginfo_t"
Failed to create rounding.h!
make: *** [rounding.h] Error 1
-bash-3.00#

----------------------------

That long "if" line that appears to be generating the rounding.h file
seems to be failing but parsing exactly what it's supposed to be doing is
beyond me. Is there a way I can recreate that step from the shell to see
what it should be doing?

I welcome any guidance...

rrue
seattle


More information about the rsync mailing list