Subject: Pine3.94 Compile Errors on Linux

From: [email-masked] (Aaron M Gowatch)
Date: Sun, 21 Jul 1996 20:20:19 GMT

I am trying to compile Pine3.94 on a box running MkLinux 1.2.13.  I am
getting this string of error messages during compilation.  There were
a few suggestions in the pine discussion forum regarding the way that
Linux defines iovec.  I have tried commenting the declartion of struct
iovec out of sys/uio.h, (which is actually what linux/uio.h suggests),
and pretty much every other suggestion that was offered.  This problem
appears to be pretty prevalent with Linux machines so I'm sure that
someone has successfully solved this.  Here are the messages that I am
getting...

ln: c-client: File exists
ln: imapd: File exists
Making c-client library, mtest and imapd
make build SYSTYPE=ANSI OS=lnx
make[1]: Entering directory `/usr2/local/src/pine3.94/imap'
echo lnx > OSTYPE
rm -rf systype
ln -s ANSI systype
cd ANSI/c-client; make lnx
make[2]: Entering directory
`/usr2/local/src/pine3.94/imap/ANSI/c-client'
make mtest OS=lnx EXTRADRIVERS="" \
        STDPROTO=bezerkproto MAILSPOOL=/var/spool/mail \
        ACTIVEFILE=/usr/lib/news/active NEWSSPOOL=/var/spool/news \
        RSHPATH=/usr/bin/rsh CFLAGS="-g -O -DNFSKLUDGE "
make[3]: Entering directory
`/usr2/local/src/pine3.94/imap/ANSI/c-client'
./drivers  imap nntp pop3 mh tenex mtx mmdf bezerk news phile dummy
rm -f CCTYPE CFLAGS LDFLAGS osdep.h
echo cc > CCTYPE
echo -g -O -DNFSKLUDGE  > CFLAGS
echo   > LDFLAGS
ln -s os_lnx.h osdep.h
cc -g -O -DNFSKLUDGE    -c mail.c -o mail.o
cc -g -O -DNFSKLUDGE    -c bezerk.c -o bezerk.o
cc -g -O -DNFSKLUDGE    -c mtx.c -o mtx.o
cc -g -O -DNFSKLUDGE    -c tenex2.c -o tenex2.o
cc -g -O -DNFSKLUDGE    -c mbox.c -o mbox.o
cc -g -O -DNFSKLUDGE    -c mh.c -o mh.o
mh.c: In function `mh_ping':
mh.c:810: warning: passing arg 3 of `scandir' from incompatible
pointer type
mh.c:810: warning: passing arg 4 of `scandir' from incompatible
pointer type
mh.c: In function `mh_append':
mh.c:1052: warning: passing arg 3 of `scandir' from incompatible
pointer type
mh.c:1052: warning: passing arg 4 of `scandir' from incompatible
pointer type
cc -g -O -DNFSKLUDGE    -c mmdf.c -o mmdf.o
cc -g -O -DNFSKLUDGE    -c imap2.c -o imap2.o
cc -g -O -DNFSKLUDGE    -c pop3.c -o pop3.o
cc -g -O -DNFSKLUDGE    -c news.c -o news.o
news.c: In function `news_open':
news.c:312: warning: passing arg 3 of `scandir' from incompatible
pointer 
type
news.c:312: warning: passing arg 4 of `scandir' from incompatible
pointer 
type
cc -g -O -DNFSKLUDGE    -c nntpcunx.c -o nntpcunx.o
cc -g -O -DNFSKLUDGE    -c phile.c -o phile.o
cc -g -O -DNFSKLUDGE    -c dummy.c -o dummy.o
cc -g -O -DNFSKLUDGE    -c smtp.c -o smtp.o
cc -g -O -DNFSKLUDGE    -c nntp.c -o nntp.o
cc -g -O -DNFSKLUDGE    -c rfc822.c -o rfc822.o
cc -g -O -DNFSKLUDGE    -c misc.c -o misc.o
cc -g -O -DNFSKLUDGE  -DSTDPROTO=bezerkproto 
-DMAILSPOOL=\"/var/spool/mail\" \
-DACTIVEFILE=\"/usr/lib/news/active\" -DNEWSSPOOL=\"/var/spool/news\"
\
-DRSH=\"rsh\" -DRSHPATH=\"/usr/bin/rsh\" \
 -c os_lnx.c
In file included from /usr/include/linux/socket.h:6,
                 from /usr/include/sys/socket.h:5,
                 from os_lnx.c:42:
/usr/include/linux/uio.h:18: redefinition of `struct iovec'
env_unix.c: In function `env_init':
In file included from os_lnx.c:56:
env_unix.c:258: warning: passing arg 1 of `cpystr' discards `const'
from 
pointer target type
tcp_unix.c: In function `tcp_open':
In file included from os_lnx.c:58:
tcp_unix.c:216: warning: passing arg 1 of `cpystr' discards `const'
from 
pointer target type
tcp_unix.c: In function `tcp_aopen':
tcp_unix.c:293: warning: passing arg 1 of `cpystr' discards `const'
from 
pointer target type
make[3]: *** [osdep.o] Error 1
make[3]: Leaving directory
`/usr2/local/src/pine3.94/imap/ANSI/c-client'
make[2]: *** [lnx] Error 2
make[2]: Leaving directory
`/usr2/local/src/pine3.94/imap/ANSI/c-client'
make[1]: *** [build] Error 2
make[1]: Leaving directory `/usr2/local/src/pine3.94/imap'
make: *** [lnx] Error 2

Making Pico and Pilot
rm -f osdep.c
cp os_unix.c osdep.c
rm -f osdep.h
cp os_unix.h osdep.h
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE attach.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE ansi.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE basic.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE bind.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE browse.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE buffer.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE composer.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE display.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE file.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE fileio.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE line.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE osdep.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE pico.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE random.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE region.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE search.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE spell.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE tcap.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE window.c
cc -c  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE word.c
ar ru libpico.a attach.o ansi.o basic.o bind.o browse.o buffer.o 
composer.o display.o file.o fileio.o line.o osdep.o pico.o random.o 
region.o search.o spell.o tcap.o window.o word.o
ar: creating libpico.a
ranlib libpico.a
cc  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE main.c libpico.a  -ltermcap
-o 
pico
cc  -g -Dlnx -DPOSIX -DJOB_CONTROL -DMOUSE pilot.c libpico.a
-ltermcap 
-o pilot

Making Pine.
rm -f os.h
ln -s osdep/os-lnx.h os.h
./cmplhlp2.sh  < pine.hlp > helptext.h
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c addrbook.c -o 
addrbook.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c adrbklib.c -o 
adrbklib.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c args.c -o args.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c context.c -o
context.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c filter.c -o
filter.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c folder.c -o
folder.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c help.c -o help.o
./cmplhelp.sh  < pine.hlp > helptext.c
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c helptext.c -o 
helptext.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c imap.c -o imap.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c init.c -o init.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c mailcap.c -o
mailcap.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c mailcmd.c -o
mailcmd.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c mailindx.c -o 
mailindx.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c mailpart.c -o 
mailpart.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c mailview.c -o 
mailview.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c newmail.c -o
newmail.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c other.c -o
other.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c pine.c -o pine.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c reply.c -o
reply.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c screen.c -o
screen.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c send.c -o send.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c signals.c -o
signals.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c status.c -o
status.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c strings.c -o
strings.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c ttyin.c -o
ttyin.o
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c ttyout.c -o
ttyout.o
cd osdep; make includer os-lnx.c; cd ..
make[1]: Entering directory `/usr2/local/src/pine3.94/pine/osdep'
cc -o includer includer.c
./includer < os-lnx.ic > os-lnx.c
make[1]: Leaving directory `/usr2/local/src/pine3.94/pine/osdep'
rm -f os.c
ln -s osdep/os-lnx.c os.c
cc   -g -DDEBUG  -DLNX -DSYSTYPE=\"LNX\" -DMOUSE   -c os.c -o os.o
os.c: In function `canonical_name':
os.c:1013: warning: return discards `const' from pointer target type
os.c: In function `post_reap':
os.c:1740: warning: passing arg 2 of `waitpid' from incompatible
pointer type
make: *** No rule to make target `../c-client/c-client.a'.  Stop.

Links to executables are in bin directory:
size: bin/pine: No such file or directory
size: bin/mtest: No such file or directory
size: bin/imapd: No such file or directory
text    data    bss     dec     hex     filename
262112  12288   2828    277228  43aec   bin/pico
262112  12288   2724    277124  43a84   bin/pilot
Done

Any help would be _greatly_ appreciated...

Aaron