On Tue, Feb 26, 2019 at 11:18:18AM +0000, Santiago Vila wrote: > /bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. > -DSYSCONFDIR='"/etc"' -I./../libdynaloginclient -Wdate-time > -D_FORTIFY_SOURCE=2 -pthread -DLINUX -D_REENTRANT -D_GNU_SOURCE > -I/usr/include/apr-1.0 -I/usr/include/liboath -c -o > pam_dynalogin_la-pam_dynalogin.lo `test -f 'pam_dynalogin.c' || echo > './'`pam_dynalogin.c > libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DSYSCONFDIR=\"/etc\" > -I./../libdynaloginclient -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -DLINUX > -D_REENTRANT -D_GNU_SOURCE -I/usr/include/apr-1.0 -I/usr/include/liboath -c > pam_dynalogin.c -fPIC -DPIC -o .libs/pam_dynalogin_la-pam_dynalogin.o > libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DSYSCONFDIR=\"/etc\" > -I./../libdynaloginclient -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -DLINUX > -D_REENTRANT -D_GNU_SOURCE -I/usr/include/apr-1.0 -I/usr/include/liboath -c > pam_dynalogin.c -o pam_dynalogin_la-pam_dynalogin.o >/dev/null 2>&1 > make[3]: *** [Makefile:366: pam_dynalogin_la-pam_dynalogin.lo] Error 1 I have no idea why libtool seems to call gcc twice, the first time correctly, the second time without -DPIC and suppressing the output, but the second command fails with the following output:
""" pam_dynalogin.c:327:8: error: variable ‘_pam_dynalogin_modstruct’ has initializer but incomplete type struct pam_module _pam_dynalogin_modstruct = { ^~~~~~~~~~ pam_dynalogin.c:328:3: warning: excess elements in struct initializer "pam_dynalogin", ^~~~~~~~~~~~~~~ pam_dynalogin.c:328:3: note: (near initialization for ‘_pam_dynalogin_modstruct’) pam_dynalogin.c:329:3: warning: excess elements in struct initializer pam_sm_authenticate, ^~~~~~~~~~~~~~~~~~~ pam_dynalogin.c:329:3: note: (near initialization for ‘_pam_dynalogin_modstruct’) pam_dynalogin.c:330:3: warning: excess elements in struct initializer pam_sm_setcred, ^~~~~~~~~~~~~~ pam_dynalogin.c:330:3: note: (near initialization for ‘_pam_dynalogin_modstruct’) pam_dynalogin.c:331:3: warning: excess elements in struct initializer NULL, ^~~~ pam_dynalogin.c:331:3: note: (near initialization for ‘_pam_dynalogin_modstruct’) pam_dynalogin.c:332:3: warning: excess elements in struct initializer NULL, ^~~~ pam_dynalogin.c:332:3: note: (near initialization for ‘_pam_dynalogin_modstruct’) pam_dynalogin.c:333:3: warning: excess elements in struct initializer NULL, ^~~~ pam_dynalogin.c:333:3: note: (near initialization for ‘_pam_dynalogin_modstruct’) pam_dynalogin.c:334:3: warning: excess elements in struct initializer NULL ^~~~ pam_dynalogin.c:334:3: note: (near initialization for ‘_pam_dynalogin_modstruct’) pam_dynalogin.c:327:19: error: storage size of ‘_pam_dynalogin_modstruct’ isn’t known struct pam_module _pam_dynalogin_modstruct = { ^~~~~~~~~~~~~~~~~~~~~~~~ """ This seems to be a direct consequence of missing -DPIC (via #ifndef PIC #define PAM_STATIC). -- WBR, wRAR
signature.asc
Description: PGP signature