On 2021-05-06 13:40, Fred. Zwarts via Opendnssec-user wrote:
From these errors I concluded that I had to add the "-std=c99" option
to the compiler, so I used:

export CFLAGS="-std=c99"
./configure
make clean
make

But then another errors was printed:

./wire/notify.h:64:21: error: field ‘timeout’ has incomplete type
     struct timespec timeout;
                     ^
Makefile:801: recipe for target 'daemon/signertasks.o' failed
make[2]: *** [daemon/signertasks.o] Error 1
make[2]: Leaving directory '/downloads/opendnssec-2.1.9/signer/src'
Makefile:483: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/downloads/opendnssec-2.1.9/signer'
Makefile:534: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1


I finally found a work-around with

unset CFLAGS
./configure
make clean
make

Then, when the above error caused an exit of the make, I entered the
signer/src directory and I copied/pasted the latest gcc command shown,
adding the -std=c99 option. Then I returned to the main directory and
used "make" again, which continued to compile other source files. This
I had to do for about three source files.
I have the impression that I now have a working set of programs,
although I am a little bit worried having linked object files with
different compiler options.

So, two questions:

1) Is there a way to use configure such that the compilation does not
end with errors?

I think if you use
    -std=gnu11
in stead of -std=c11 or -std=c99 you are in the clear.  So:
  CFLAGS=-std=gnu11 ./configure
This is caused because in some installation they use a compiler which supports c11,
but do not have the erratum for c11 included.

2) Is a mix of object files with and without the -std=c99 option dangerous?

I think the linking will fail in this specific case because one part assumes some names to be defined while the other doesn't include them. In general it
is sometimes permissible, but I would avoid this.

\Berry



_______________________________________________
Opendnssec-user mailing list
Opendnssec-user@lists.opendnssec.org
https://lists.opendnssec.org/mailman/listinfo/opendnssec-user
_______________________________________________
Opendnssec-user mailing list
Opendnssec-user@lists.opendnssec.org
https://lists.opendnssec.org/mailman/listinfo/opendnssec-user

Reply via email to