[EMAIL PROTECTED] (Colin Watson) writes: > [EMAIL PROTECTED] wrote: > >[EMAIL PROTECTED] (Colin Watson) writes: > >> [EMAIL PROTECTED] wrote: > >> >Has anyone managed to compile plptools (unfortunately there's no > >> >Debian package)? I found no email address, and I couldn't even find > >> >out who's the author. > >> > >> Where can we get the source code? > > > >Sorry, it's <ftp://ftp.to.com/pub/psion/tarballs/plptools-0.6.tar.gz> > > Got it, thanks. For the address of the author, Fritz Elfert, look in > some of the source files; for instance, it's on line 7 of plpftp/ftp.cc. > > >> >Making all in plpftp > >> >make[1]: Entering directory `/home/andre/plptools-0.6/plpftp' > >> >g++ -DHAVE_CONFIG_H -I. -I. -I../include -I../lib -O2 -Wall -c ftp.cc > >> >ftp.cc: In function `int checkAbortHash(long int)': > >> >ftp.cc:169: implicit declaration of function `int printf(...)' > >> >ftp.cc:169: `stdout' undeclared (first use this function) > >> > >> Looks like somebody forgot to #include <stdio.h>. > > > >Which means? > > It's the author's fault. In C, if you use certain functions or > variables, you need to include the appropriate "header files" into your > program from the libraries that define them. For printf() et al, you > need stdio, the standard input/output library. The author did include > this, but only if you have the development readline libraries available; > unfortunately this is bogus, because he uses things like printf() and > stdout unconditionally. > > (You probably want to have the development readline libraries installed > while compiling this anyway. Install the libreadline4-dev package.)
ok > Go to plpftp/ftp.cc line 46, remove that line (which should read > '#include <stdio.h>'), and move it up to the topmost block of #include > directives. I put it on top of them. > The code then compiles fine - well, there are a few warnings > (two-digit years - I can only hope this is just something that the Psion > link protocol requires), but nothing fatal. Now I get: Making all in plpftp make[1]: Entering directory `/home/andre/plptools-0.6/plpftp' g++ -DHAVE_CONFIG_H -I. -I. -I../include -I../lib -O2 -Wall -c ftp.cc ftp.cc: In method `int ftp::session(rfsv &, rpcs &, int, char **)': ftp.cc:339: warning: `%c' yields only last 2 digits of year in some locales ftp.cc:369: warning: `%c' yields only last 2 digits of year in some locales ftp.cc:461: warning: `%c' yields only last 2 digits of year in some locales ftp.cc: In function `char ** do_completion(char *, int, int)': ftp.cc:916: ANSI C++ prohibits conversion from `(char *, int)' to `(...)' ftp.cc:937: ANSI C++ prohibits conversion from `(char *, int)' to `(...)' ftp.cc: At top level: ftp.cc:56: warning: `class rpcs * comp_r' defined but not used make[1]: *** [ftp.o] Error 1 make[1]: Leaving directory `/home/andre/plptools-0.6/plpftp' make: *** [all-recursive] Error 1 Maybe there's something wrong with my development equipment? -- Andre