Stephen Usher
2013-Apr-16 15:25 UTC
[Dovecot] Dovecot 2.1.16: Quota plugin compile fails: Solaris 10
Dovecot 2.1.16 fails to compile giving the following error under Solaris 10. Previously I had no problem compiling 2.1.12. The start of the config.log file contains: It was created by Dovecot configure 2.1.16, which was generated by GNU Autoconf 2.68. Invocation command line was $ ./configure ## --------- ## ## Platform. ## ## --------- ## hostname = luna uname -m = i86pc uname -r = 5.10 uname -s = SunOS uname -v = Generic_148889-01 /usr/bin/uname -p = i386 /bin/uname -X = System = SunOS Node = luna Release = 5.10 KernelID = Generic_148889-01 Machine = i86pc BusType = <unknown> Serial = <unknown> Users = <unknown> OEM# = 0 Origin# = 1 NumCPU = 4 /bin/arch = i86pc /usr/bin/arch -k = i86pc /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown PATH: /usr/sfw/bin PATH: /usr/local/bin PATH: /usr/bin PATH: /usr/sbin PATH: /usr/ccs/bin PATH: /opt/SUNWspro/bin PATH: /usr/ucb GCC version info: Reading specs from /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/specs Configured with: /builds/sfw10-gate/usr/src/cmd/gcc/gcc-3.4.3/configure --prefix=/usr/sfw --with-as=/usr/sfw/bin/gas --with-gnu-as --with-ld=/usr/ccs/bin/ld --without-gnu-ld --enable-languages=c,c++ --enable-shared Thread model: posix gcc version 3.4.3 (csl-sol210-3_4-branch+sol_rpath) Making all in quota gmake[4]: Entering directory `/usr/local/src/mail/dovecot/dovecot-2.1.16/src/plugins/quota' gcc -DHAVE_CONFIG_H -I. -I../../.. -I../../../src/lib -I../../../src/lib-master -I../../../src/lib-dict -I../../../src/lib-index -I../../../src/lib-mail -I../../../src/lib-storage -I../../../src/lib-storage/index -I../../../src/lib-storage/index/maildir -I../../../src/doveadm -I/usr/local/ssl/include -I/usr/sfw/include -I/usr/local/include -std=gnu99 -g -O2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -fno-builtin-strftime -I/usr/local/ssl/include -MT quota-status.o -MD -MP -MF .deps/quota-status.Tpo -c -o quota-status.o quota-status.c quota-status.c: In function `main': quota-status.c:200: error: `optarg' undeclared (first use in this function) quota-status.c:200: error: (Each undeclared identifier is reported only once quota-status.c:200: error: for each function it appears in.) gmake[4]: *** [quota-status.o] Error 1 gmake[4]: Leaving directory `/usr/local/src/mail/dovecot/dovecot-2.1.16/src/plugins/quota' Steve -- --------------------------------------------------------------------------- IT Systems Administrator, E-Mail:- steve at earth.ox.ac.uk Department of Earth Sciences, Tel:- +44 (0)1865 282110 Oxford University, South Parks Road, Oxford, UK. Fax:- +44 (0)1865 272072
Stephen Usher
2013-Apr-16 15:37 UTC
[Dovecot] Dovecot 2.1.16: Quota plugin compile fails: Solaris 10
It seems that the following C standard header files need to be included in quota-status.c: #include <stdio.h> #include <stdlib.h> #include <unistd.h> Once these are added it compiles. Steve -- --------------------------------------------------------------------------- IT Systems Administrator, E-Mail:- steve at earth.ox.ac.uk Department of Earth Sciences, Tel:- +44 (0)1865 282110 Oxford University, South Parks Road, Oxford, UK. Fax:- +44 (0)1865 272072
Joseph Tam
2013-Apr-16 23:14 UTC
[Dovecot] Dovecot 2.1.16: Quota plugin compile fails: Solaris 10
Stephen Usher writes:> quota-status.c: In function `main': > quota-status.c:200: error: `optarg' undeclared (first use in this function) > ... > It seems that the following C standard header files need to be included in > quota-status.c: > > #include <stdio.h> > #include <stdlib.h> > #include <unistd.h>It was mentioned a few weeks back (check the archives), but you only need one of them (which may include the others). My patch to cope with this --- a/src/plugins/quota/quota-status.c Sat Apr 13 02:18:40 2013 +++ b/src/plugins/quota/quota-status.c Sat Apr 13 02:18:56 2013 @@ -14,0 +14,1 @@ +#include <stdio.h> This worked for me. Joseph Tam <jtam.home at gmail.com>