Re: multiple definition of fstat in stat.h when compiling a library

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

 



On 9 April 2018 at 22:40, Jack Stalnaker wrote:
> I am trying to compile a library I have successfully compiled in the past
> using gcc-4.8.2. The library (graphviz) is no longer compiling under
> gcc-7.3.0. I have contacted the library mailing list as well, but I'm not
> sure which side the error originates from.
>
> One example error message looks like this:
>
> ../../lib/expr/.libs/libexpr_C.a(sfclose.o): In function `fstat':
> /mygcc/gcc-7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include-fixed/sys/stat.h:509:
> multiple definition of `fstat'
> ../../lib/expr/.libs/libexpr_C.a(strton.o):/mygcc/gcc-7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include-fixed/sys/stat.h:509:
> first defined here
>
> There are many of these for other object files, but all say that fstat is
> multiply defined.
>
> Does this look familiar to anyone? Is there a workaround or something like
> that?

It could be caused by the change in GCC 5 to use -std=gnu99 by
default, instead of -std=gnu89. That changes the meaning of 'inline'
from the GNU extension to the standard C99 semantics.

What is at line 509 of
/mygcc/gcc-7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include-fixed/sys/stat.h
?



[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