Bug 955

Summary: Sudo Compile failed
Product: Sudo Reporter: Joe <infojjt>
Component: SudoAssignee: Todd C. Miller <Todd.Miller>
Status: RESOLVED FIXED    
Severity: normal    
Priority: low    
Version: 1.9.5   
Hardware: IBM   
OS: AIX   

Description Joe 2021-01-26 13:43:56 MST
My configure line:

./configure --prefix=/scs/pkgs/sudo-1.9.5p2 --with-aixauth --with-ignore-dot --with-env-editor --with-pam --with-pam-login

[root@blah:/usr/local/scs/src/sudo-1.9.5p2]# gmake
for d in lib/util  lib/eventlog lib/iolog lib/logsrv logsrvd plugins/audit_json plugins/group_file plugins/sample_approval plugins/sudoers plugins/system_group src include doc examples; do \
    (cd $d && exec gmake all) && continue; \
    exit $?; \
done
gmake[1]: Entering directory '/app/admin/src/sudo-1.9.5p2/lib/util'
/bin/sh ../../libtool --tag=disable-static --mode=compile gcc -c -o digest.lo -I../../include -I../.. -I. -D_PATH_SUDO_CONF=\"/etc/sudo.conf\" -DZLIB_CONST -D_FORTIFY_SOURCE=2 -DDEFAULT_TEXT_DOMAIN=\"sudo\" -g -O2 -fvisibility=hidden    ./digest.c
libtool: compile:  gcc -c -I../../include -I../.. -I. -D_PATH_SUDO_CONF=\"/etc/sudo.conf\" -DZLIB_CONST -D_FORTIFY_SOURCE=2 -DDEFAULT_TEXT_DOMAIN=\"sudo\" -g -O2 -fvisibility=hidden ./digest.c  -fPIC -DPIC -o .libs/digest.o
In file included from /usr/include/sys/resource.h:57,
                 from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/sys/wait.h:56,
                 from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/stdlib.h:411,
                 from ./digest.c:26:
/usr/include/sys/time.h:108:16: error: redefinition of 'struct sigset_t'
 typedef struct sigset_t {
                ^~~~~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/sys/wait.h:45,
                 from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/stdlib.h:411,
                 from ./digest.c:26:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/sys/types.h:345:16: note: originally defined here
 typedef struct sigset_t {
                ^~~~~~~~
In file included from /usr/include/sys/resource.h:57,
                 from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/sys/wait.h:56,
                 from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/stdlib.h:411,
                 from ./digest.c:26:
/usr/include/sys/time.h:124:3: error: conflicting types for 'sigset_t'
 } sigset_t;
   ^~~~~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/sys/wait.h:45,
                 from /opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/stdlib.h:411,
                 from ./digest.c:26:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/include-fixed/sys/types.h:361:3: note: previous declaration of 'sigset_t' was here
 } sigset_t;
   ^~~~~~~~
gmake[1]: *** [Makefile:496: digest.lo] Error 1
gmake[1]: Leaving directory '/app/admin/src/sudo-1.9.5p2/lib/util'
gmake: *** [Makefile:108: all] Error 2


[root@eagle:/usr/local/scs/src/sudo-1.9.5p2]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/freeware/libexec/gcc/powerpc-ibm-aix7.2.0.0/8.3.0/lto-wrapper
Target: powerpc-ibm-aix7.2.0.0
Configured with: ../gcc-8.3.0/configure --prefix=/opt/freeware --mandir=/opt/freeware/man --infodir=/opt/freeware/info --with-local-prefix=/opt/freeware --with-as=/usr/bin/as --with-ld=/usr/bin/ld --enable-languages=c,c++,fortran,go --enable-version-specific-runtime-libs --disable-nls --enable-decimal-float=dpd --with-cloog=no --with-ppl=no --disable-libstdcxx-pch --enable-__cxa_atexit --disable-werror --enable-libstdcxx-filesystem-ts --host=powerpc-ibm-aix7.2.0.0
Thread model: aix
gcc version 8.3.0 (GCC) 
[root@eagle:/usr/local/sc

We aren't sure if this is gcc problem, so we are looking into updating that too, but wanted to see if this the sudo source could be ruled out or if there is a fix/workaround.
Comment 1 Todd C. Miller 2021-01-26 13:45:41 MST
This looks like a gcc problem.  Perhaps the system includes and gcc fixed includes are out of sync.
Comment 2 Joe 2021-01-26 14:50:51 MST
Yuo were right.  Updating gcc got it taken care of.  Marking as resolved.