Re: Need help with Proc compilation with GCC 4.8.3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 1 Mar 2023 at 16:24, James K. Lowden <jklowden@xxxxxxxxxxxxxxx> wrote:
>
> On Wed, 1 Mar 2023 06:33:25 +0000
> "Kondreddy, Vinay Kumar via Gcc" <gcc@xxxxxxxxxxx> wrote:
>
> > /usr/include/sys/time.h:110:16: error: redefinition of 'struct sigset_t'
> > typedef struct sigset_t {
> >                 ^
> > In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.8.3/include-fixed/stdio.h:479:0,
> >                  from /app/amatch/tst/code/src/c/PushOfPayables.c:180:
> > /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.8.3/include-fixed/sys/types.h:345:16: note: originally defined here
>
> The question you're asking is about the C language, not the gcc
> compiler.
>
> > We are using GCC 4.8.3
>
> I see no evidence of that.  Your "make" output shows:
>
> > Pro*C/C++: Release 19.0.0.0.0
>
> The error says what it means: struct sigset_t is defined twice.  It
> cannot be, because the compiler cannot serve two masters.  That is,
> there can be only one definition for each type.
>
> Based on the directory names,
>
>         /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/...
> and
>         /usr/include/sys/time.h
>
> it would seem that copy of sys/types.h was either installed by the Pro*C/C++ compiler, or installed for the sake of that compiler.

That's a gcc path, and contains the "fixincludes" version of the system stdlib.h

It looks to me like GCC was built against AIX 7.1.0.0 when struct
sigset_t was defined in stdlib.h, but now it's being compiled on a
different version of AIX where sigset_t is defined in time.h

The solution is to re-generate the fixincludes headers, using the
mkheader script that I mentioned in my reply. That will sync GCC's
"fixed" stdlib.h with the current version of stdlib.h on the machine.


> Perhaps the last time your application was compiled, there was only one C compiler installed on the machine.   Now, it would seem there are two.
>
> You need to decide which compiler to use, and which libraries and header files to use with it.
>
> --jkl



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux